Вниз
Скачать: CL | DM;

Выловить окончание работы плеера   Найти похожие ветки 

← →
Андрей_1 ©   (2009-04-09 12:40) [0]

Для запуска внешней програмы использую такую функцию:
function TForm1.ExecuteFile(const FileName, Params, DefaultDir: string;
ShowCmd: Integer): THandle;
var
fn:String;
zFileName, zParams, zDir: array[0..79] of Char;
begin
Result := 1;
fn:="Файл не найден";
 if ShellExecute(Application.MainForm.Handle,nil,
 StrPCopy(zFileName, FileName), StrPCopy(zParams, Params),
StrPCopy(zDir, DefaultDir), ShowCmd) < 32 then
Application.MessageBox(PChar(fn),"Заголовок окна", MB_OK);
end;

Вызов функции

procedure TForm1.Timer4Timer(Sender: TObject);
begin
ExecuteFile("D:\Реклама\VIDEO_TS\Vts_01_1.vob", "", "C:\2", SW_NORMAL);
Timer4.Enabled:=False;
end;

Запускается реклама через KMPlayer.exe.
После окончания рекламы KMPlayer.exe закрывается.
Как выловить момент окончания рекламы или закрытия KMPlayer.exe и выдать сообщение.


← →
Сергей М. ©   (2009-04-09 13:08) [1]


> Как выловить момент окончания рекламы


Никак, если плейер не предоставляет соответствующего механизма нотификации.


> или закрытия KMPlayer.exe


http://www.delphirus.com/modules.php?name=News&file=article&sid=32


← →
Андрей_1 ©   (2009-04-09 13:20) [2]

Если так, то выход только через Timer?
Включать Timer и каждую секунду проверять наличие окна KMPlayer?


← →
Вариант   (2009-04-09 13:34) [3]


> Андрей_1 ©   (09.04.09 13:20) [2]
> Если так, то выход только через Timer?
> Включать Timer и каждую секунду проверять наличие окна KMPlayer?
>


Есть и другие варианты, например
ShellExecuteEx и WaitForSingleObject ( или WaitForMultipleObjects,MsgWaitForMultipleObjects)


← →
Андрей_1 ©   (2009-04-09 13:37) [4]

А как использовать?
ShellExecuteEx и WaitForSingleObject ( или WaitForMultipleObjects,MsgWaitForMultipleObjects)


← →
Сергей М. ©   (2009-04-09 13:46) [5]


> как использовать?


Т.е. справку по этим ф-циям ты уже проштудировал и нишиша там не понял, так это надо понимать ?


← →
Вариант   (2009-04-09 14:00) [6]


> Андрей_1 ©   (09.04.09 13:37) [4]

Один из примеров в коде для CreateProcess есть и в указанной ссылке
> Сергей М. ©   (09.04.09 13:08) [1]



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.007 c
3-1221062245
mini
2008-09-10 19:57
2009.05.24
сервисы и Interbase не дружат?


2-1239604199
Iriss
2009-04-13 10:29
2009.05.24
сохранение XMLDocument


15-1237797663
desc
2009-03-23 11:41
2009.05.24
MS SQL Server 2005


2-1239140033
istok
2009-04-08 01:33
2009.05.24
D2009: PAnsiChar to AnsiString


2-1239124156
Dima88
2009-04-07 21:09
2009.05.24
Вызов процедуры Oracle




   Наверх