Вожусь с плеером.Ктонибудь не подскажет одну вещь: допустим я использую свой плеер по умолчанию (
if not ('' = System.ParamStr(1)) then with MediaPlayer1 do begin try Filename := System.ParamStr(1); {Ну и так далее...}
) Так вот когда я не закрывая первого экземпляра плеера открываю другой муз. файл, то открывается второй экземпляр плеера и там играет вторая мелодия. А я хочу чтобы 2-я мелодия играла в первом экземпляре.
У меня не происходит... Покажи, как ты передаешь имя файла, может там проблема...
Добавлено через 4 мин. А, у тебя берется параметр командной строки... Я сделал вот так:
var d: PChar; // Глобально !!!
procedure TForm1.FormCreate(Sender: TObject); var h: hwnd; begin Application.OnMessage := AppMessage; d := PChar(ExtractFilePath(ParamStr(0)) + 'sound.wav'); 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; Form1.Caption := 'MP3 1.8.0.7'; ... end;
const WM_ADD_TO_PLAYLIST = WM_USER + 1010;
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; Handled := True;