IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Дружит ли Дельфи с Винампом?
сообщение
Сообщение #1


Гость






Как из Delphi-приложения можно управлять Winamp-ом?
Например, при нажатии кнопки запускется и начинает играть.

У меня где-то валяется mp-3 диск с автораном написанном на Delphi.
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 84
Пол: Мужской

Репутация: -  2  +


;D Конечно!

Приветствую Вас, Кирилл!

program WAHotKeys;
uses Windows, Messages;
ResourceString RC_Winamp = 'Winamp v1.x';
ResourceString RC_Winamp3 = 'BaseWindow_RootWnd';

const
Num = 13;
Spec = Num - 10;
keys: array[1..Num] of byte = (byte('X'), byte('V'), byte('C'), byte('B'),
byte('Z'), byte('L'), VK_LEFT, VK_RIGHT, VK_UP, VK_DOWN,
byte('Q'), byte('S'), byte('N'));
var
msg: TMsg;
id: array[1..Num] of integer;
st: string;
WA3, handle: THandle;
i, key: integer;
begin
handle:= GetModuleHandle('WAHotKeys');
st:= 'hk ';
for i:= 1 to Num do
begin
st[3]:= char(64+i);
id[i]:= GlobalAddAtom(PAnsiChar(st));
RegisterHotKey(handle, id[i], MOD_WIN, keys[i]);
end;
while GetMessage(Msg, 0, 0, 0) do
begin
TranslateMessage(Msg);
WA3:= findwindow(PAnsiChar(RC_Winamp3), nil); // WinAmp3 window
if WA3=0 then WA3:=findwindow(PAnsiChar(RC_Winamp), nil); // WinAmp window
if (WA30) then
begin
if ((msg.LParam shl 16) shr 16)=MOD_WIN then
begin // MOD_WIN
key:= (msg.LParam shr 16);
if key=byte('S') then
begin
if IsWindowVisible(WA3) then ShowWindow(WA3, sw_minimize)
else ShowWindow(WA3, sw_restore);
end else
if key=byte('N') then
begin
postmessage(WA3, wm_keydown, byte('B'), 0);
postmessage(WA3, wm_keyup, byte('B'), 0);
end else
if key=byte('Q') then
begin // UnRegisterHotKeys
for i:= 1 to Num do UnRegisterHotKey(handle, id[i]);
Halt(Msg.wParam);
end else
begin
for i:= 1 to (Num-Spec) do
begin // for i
if key=keys[i] then
begin
postmessage(WA3, wm_keydown, keys[i], 0);
postmessage(WA3, wm_keyup, keys[i], 0);
end;
end; // for i
end;
end; // MOD_WIN
end;
DispatchMessage(Msg);
end;
Halt(Msg.wParam);
end.

эта прграмма позволяет управлять винампом. измените код. надеюсь у вас получится


--------------------
* Origin: "It's MY LIFE!!! © Jhon Bon Jovi"
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 14.05.2024 19:55
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name