Сделай сам на Delphi: Визуализационный плагин к Winamp
30.03.2008 от Иван Ширко Quit: procedure(thismod: PwinampVisModule);cdecl;
userData: pointer;
end;
PwinampVisHeader = ^winampVisHeader;
winampVisHeader = packed record
version: integer;
description: PChar;
getModule: function( which : integer ) : PwinampVisModule; cdecl;
end;
var
//заголовок плагина
hdr: winampVisHeader;
//модуль плагина
mod1: winampVisModule;
//далее следуют процедуры, назначение которых описано выше
function getModule(which: integer): PwinampVisModule;cdecl;
begin
case which of
0: result := @mod1;
else
result := nil
end;
end;
function winampVisGetHeader: PwinampVisHeader; cdecl;
begin
result := @hdr;
end;
procedure config(this_mod: PwinampVisModule); cdecl;
begin
MessageBox(mod1.hwndParent, 'Настроек нет', 'Окно настроек', mb_OK);
end;
function init(this_mod: PwinampVisModule): integer; cdecl;
begin
//показываем форму с ProgressBar'ами
Form1.Show;
result := 0;
end;
function render(this_mod: PwinampVisModule): integer; cdecl;
begin
//при поступлении новых данных от Winamp'a устанавливаем
//высоту столбиков ProgressBar'ов в соответствии со значением
//музыкальных данных шести колонок
Form1.ProgressBar1.Position := this_mod.spectrumData[0,1];
Form1.ProgressBar2.Position := this_mod.spectrumData[0,2];
Form1.ProgressBar3.Position := this_mod.spectrumData[0,3];
Form1.ProgressBar4.Position := this_mod.spectrumData[0,4];
Form1.ProgressBar5.Position := this_mod.spectrumData[0,5];
Form1.ProgressBar6.Position := this_mod.spectrumData[0,6];
result := 0;
end; procedure quit(this_mod: PwinampVisModule); cdecl;
begin
end;
//экспортируемая функция
exports
winampVisGetHeader;begin
//заполняем начальные параметры плагина
hdr.version := VIS_HDRVER;
hdr.description := PChar(descr);
hdr.getModule := @getModule;
mod1.description := PChar(mod1_descr);
mod1.hwndParent := 0;
mod1.hDllInstance := 0;
Рубрики: Delphi, Winamp, Сделай сам |
02.04.2008 в 05:02
kRUTO!!! aftoru respeKt!!! DAVNO ISkaL TAKoE
06.06.2008 в 12:13
Спасибо за модули. В выходные попробую разобраться подробнее
16.07.2008 в 09:25
Отлично написано
14.08.2008 в 20:56
Статья очень пригодилась, все просто и понятно.
Огромное спасибо автору!:)
21.08.2008 в 13:06
Люблю когда по сути, мне понравилось.
10.09.2008 в 11:04
Благодарю, очень полезная вещь
13.09.2008 в 14:58
У меня коряво получается, но все равно спасибо.
14.09.2008 в 06:34
У меня не вышло(((
19.10.2008 в 07:15
Спасибо попробую.
22.10.2008 в 10:24
Спасибо большое!!! Одно но : в 2 плагине в коде нужно заменить “*********
keybd_event(c, $45, (KEYEVENTF_EXTENDEDKEY or 0), 0);
//key release
*****”
на
“*********
keybd_event(c, $45, (KEYEVENTF_EXTENDEDKEY or 0), 0) else
//key release
*****”. Иначе просто все лампочки всегда выключаються.
22.10.2008 в 10:48
>>Виталий
Спасибо!
28.09.2009 в 08:03
хм…интересно..спасибо за идею, давненько хотел что-либо подобное попробовать…
16.10.2009 в 01:02
Отлично я нашла что искала:)
28.07.2010 в 06:38
Класс, получилось
спасибо.
04.11.2010 в 14:35
Извините, может не по теме, но возможно вы подскажете, как сделать, что бы винамп запускался с моим скином на любом компе (на флешке если принесу и т.д.)… Т.е. сделать свой скин скином по умолчанию…