![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы с SDK BSPlayer а [D6, WinXP]
Deedlit © (2003-03-10 11:36:00)Здравствуйте все. Нужно открыть BSPlayer (один из популярных видеоплейеров) и открыть в нем видеофайл. Упоминания о такой возможности есть в SDK этой программы:
// To get BSPlayer window handle use:
// bsp_hand:=FindWindow("BSPlayer",nil);
// cds:TCOPYDATASTRUCT;
//
// cds.dwData:=BSP_OpenFile;
// cds.lpData:=Pchar("file.avi");
// cds.cbData:=strlen(cds.lpData)+1;
// SendMessage(bsp_hand,WM_COPYDATA,0,lParam(@cds));
// available in BSPlayer version 0.84.484+
//
// Open file
BSP_OpenFile = $10108;
Вот написанная процедура:
procedure TMainForm.sbOpenPlayerClick(Sender: TObject);
var
BSP: TCopyDataStruct;
hPlayer: THandle;
begin
LoadObject(PlayerPath);
hPlayer:=FindWindow("BSPlayer", nil);
BSP.dwData:=BSP_OpenFile;
BSP.lpData:=PChar("c:\127.0.0.1\Coding\[BurnUpW] Opening.avi");
BSP.cbData:=StrLen(BSP.lpData)+1;
SendMessage(hPlayer, WM_COPYDATA, 0, lParam(@BSP));
end;
... в результате которой плейер запускается, но файл не открывает. Все пути проверены. Что интересно и совсем непонятно, если не запустить плейер и попробовать FindWindow, результат не будет равен null...
В общем, нужна помощь.
Cobalt (2003-03-11 14:10:00) [1]попробуйте сделать второе приложение, и ему послать это сообщение, а потом вывести(во 2-ом), что в нем передалось.