var
d: PChar;
procedure TForm1.FormCreate(Sender: TObject);
var
h: hwnd;
begin
Application.OnMessage := AppMessage;
d := StrNew(PChar(System.ParamStr(1))); // Выделяем память под строку !!!
h := FindWindow(nil,'MP3 1.8.0.7');
if (h<>0) then begin
PostMessage(h,WM_ADD_TO_PLAYLIST,0,lparam(d));
Application.Terminate;
end;
end;
procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
var s: string;
begin
if Msg.message = WM_ADD_TO_PLAYLIST then
begin
s := StrPas(PChar(Msg.lParam));
MediaPlayer1.FileName := s;
MediaPlayer1.Open;
...
Попробуй, что ЭТОТ вариант тебе выдаст? (не забудь потом удалить D, чтоб не было утечки)
Сообщение отредактировано: volvo -