Форум: "Начинающим";
Текущий архив: 2008.08.03;
Скачать: [xml.tar.bz2];
ВнизWinAMP Найти похожие ветки
← →
Дядя Педро (2008-06-28 12:55) [0]Здравствуйте.
Как можно узнать название и исплонителя песни, которые проигрываются в винампе? получилось узнать длину трека, битрейт и тп. Делаю так:
function WinampUser(Data: Integer; ID: Integer): Integer;
var
WinampHWND: HWND;
begin
WinampHWND := FindWindow("Winamp v1.x", nil);
if WinampHWND <> 0 then
Result := SendMessage(WinampHWND, WM_USER, Data, ID)
else
Result := -1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Showmessage(IntToStr(WinampUser(1, 105)));
end;
Так я возвращаю длину текущего трека. Но строковые значения как достать не знаю. Помогите, пожалуйста.
Спасибо.
← →
AlexanderMS © (2008-06-28 20:17) [1]1) Может, проще достать из заголовка главного окна?
2) Поэкспериментировать с ID?
← →
Jet (2008-06-29 12:27) [2]У меня проблема с получением названия трека из JetAudio.
hja := FindWindow("COWON Jet-Audio MainWnd Class", nil);
if hja <> 0
then
begin
SetLength(tmp, 255);
GetWindowText(hja, @tmp[1], 255);
...............................................
Проблема в том, что текст в заголовке главного окна "ползает", как бегущая строка. Была мысль накапливать по букве весь текст, который через заголовок идет, но не радостно как-то от этого.
Есть ли какой способ более "правильный" и быстрый?
← →
grisme (2008-06-29 13:08) [3]разве у WinAMP нет собственного API для этих целей?
← →
AlexanderMS © (2008-06-29 13:32) [4]
> Проблема в том, что текст в заголовке главного окна "ползает",
> как бегущая строка.
А на кнопке программы, расположенной на панели задач, какой текст отображается? Такой же, движущийся?
← →
Jet (2008-06-29 18:02) [5]А на кнопке программы, расположенной на панели задач, какой текст отображается? Такой же, движущийся?
ага :) а в самом JetAudio даж в настройках нету отключить это движение. Можно только название сделать чтоб заместо трека выставлялось слово JetAudio....
← →
easy © (2008-06-29 20:43) [6]я бы здесь для начала посмотрел -
winamp
http://www.winamp.com/development/sdk
JetAudio
http://www.media-play.org/download/index.php?subcat=104
← →
@!!ex © (2008-06-29 21:28) [7]<offtop>
Кто-то еще пользуется WinAmpом??
</offtop>
← →
JanMihail (2008-06-29 22:04) [8]
> Кто-то еще пользуется WinAmpом??
почему бы и нет? я пользуюсь. Он очень удобен по сравнению с Media Player"ом и другими музыкальными проигрывателями
← →
Jet (2008-06-29 22:34) [9]>easy © (29.06.08 20:43) [6]
Вчера там везде был. С винампом - все понятно.
По поводу ДжетАудио: по той ссылке http://www.media-play.org/download/index.php?subcat=104 у меня не получается скачать ни одно SDK. Чето фаервол ему мой не нравится... который отключен... Если у кого получится+не жалко времени/трафика, перезалейте пожалуйста куда-нибудь.
← →
Ляпа (2008-06-29 22:50) [10]
> Если у кого получится+не жалко времени/трафика, перезалейте
> пожалуйста куда-нибудь.
http://89.223.39.99/jet/
← →
Jet (2008-06-30 00:54) [11]Спасибо. Глянул СДК, осилил управление плеером и тд.. Но вот скопировать инфу о треке не могу.
Кусок АПИ
Message for status. wParam is not used. For lParam, refer to commands below
#define WM_REMOCON_GETSTATUS (WM_APP+740)
//////////////////////////////////////////////////////////////////////////
//
// Status command
//
// Usage -> return = SendMessage(m_hWndJetAudio, WM_REMOCON_GETSTATUS, 0, command);
// Get title info of current track
// string will be returned using WM_COPYDATA message
#define GET_STATUS_TRACK_TITLE (12)
//////////////////////////////////////////////////////////////////////////
// WM_COPYDATA is used for receive string information from Jet-Audio
// For more information, refer to example source code
//////////////////////////////////////////////////////////////////////////
Они вот так получают:
str = (LPCTSTR)pCopyDataStruct->lpData;
hjar:=FindWindow("COWON Jet-Audio Remocon Class", "Jet-Audio Remote Control");
if hjar<>0 then
SendMessage(hjar, WM_APP+740, 0, 12);
str:=LPCTSTR(PCOPYDATASTRUCT("НЕ ЗНАЮ ЧТО СЮДА НАПИСАТЬ");
← →
brother © (2008-06-30 09:58) [12]
> Кто-то еще пользуется WinAmpом??
Я! И что? ИМХО самый удобный плеер для звуковых файлов (но не для видео)
← →
Дядя Педро (2008-06-30 10:02) [13]Я пользую AIMP, но суть в том, что из него инфа достается точно так же как из винампа. А винамп, имхо, намного хуже аимпа)
← →
brother © (2008-06-30 10:05) [14]как вариант:
находим окно плейлист винампа, посылаем alt+3, находим то окно, что появилось, выдираем все что нужно из едитов, закрываем окно...
> Winamp v1.x
это для классического скина, для модерна там другое (сам с винампом разбирался в свое время)
← →
Дядя Педро (2008-06-30 11:53) [15]
> для модерна там другое
А какое если не секрет? =)
← →
brother © (2008-06-30 11:59) [16]
> А какое если не секрет? =)
разжевать и проглотить?)
я и так уже разжевал, где спасибо? ;) а далее сам...
← →
Дядя Педро (2008-06-30 12:09) [17]Спасибо-то всегда успею сказать)) Спасибо ;)
Ну попробую канеш из эдитов выдрать...
← →
@!!ex © (2008-06-30 13:05) [18]> Я! И что? ИМХО самый удобный плеер для звуковых файлов (но
> не для видео)
Не знаю как сейчас, уже года 4 не видел винампа, но раньше система управления альбомами была просто отстойная...
← →
clickmaker © (2008-06-30 13:07) [19]а может, проще достать из файла?
← →
b z (2008-06-30 13:08) [20]
> @!!ex © (30.06.08 13:05) [18]
> Не знаю как сейчас, уже года 4 не видел винампа, но раньше
> система управления альбомами была просто отстойная...
А зачем ими управлять?
← →
Jet (2008-06-30 15:10) [21]Ув. мастера. Как же мне все-таки вытащить текст из этого JetAudio? :)
Грубо говоря нужно переделать строчку
str = (LPCTSTR)pCopyDataStruct->lpData в код на Delphi
type PCopyDataStruct = ^TCopyDataStruct;
TCopyDataStruct = record
dwData: LongInt; cbData: LongInt; lpData: Pointer;
end;
..
Но что-то как я ни пытаюсь, нормального текста не возвращает, иероглифы какие-то..
← →
brother © (2008-07-01 07:22) [22]
> а может, проще достать из файла?
может и проще, но нужно всеровно знать какой файл проигрывается)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.08.03;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.008 c