Einzelnen Beitrag anzeigen

Benutzerbild von markus5766h
markus5766h

Registriert seit: 5. Mär 2009
Ort: Hamburg
569 Beiträge
 
Delphi XE8 Professional
 
#1

ShellExecute Problem mit zweitem Parameter

  Alt 7. Jan 2017, 12:11
Moin zusammen.

Ich habe derzeit einige Probleme mit ShellExexcute :

1)
Code:
procedure TfrmMain.OpenMedia(Media: String);
var
  n : Integer;
  sFile : String;
  err : Integer;
begin
  err := 63;
  err := ShellExecute(Handle, 'open', PChar(Media), nil, nil, SW_SHOWNORMAL);
  if err <= 32  then ShowMessage(ShellExecuteErrMsg(err));
end;
obige Prozedur läuft ohne Probleme, Datei wird mit der dazugehörigen Anwendung geöffnet.

2)
Code:
procedure TfrmMain.OpenMediaWithApplication(Media, Application: String);
var
  n : Integer;
  sFile : String;
  err : Integer;
begin
  err := 63;
  err := ShellExecute(Handle, 'open', PChar(Application), PChar(Media), nil, SW_SHOWNORMAL);
  if err <= 32  then ShowMessage(ShellExecuteErrMsg(err));
  ShowMessage(IntToStr(err)); // <--- Rückgabewert ist 42
end;
Media :
M:\DB_MED\MediaFiles\Video\Incognito_JapanTour2012 .avi

übergebe ich die Anwendung, mit der die Datei (Media) geöffnet werden soll im ersten Parameter
und den Dateinamen im zweiten Parameter, bekomm' ich einen Rückgabewert von 42 (kein Fehler),
der Dateiname des zweiten Parameters scheint aber bei der Anwendung nicht anzukommen:
bsp. MediaPlayer oder VLC MediaPlayer --> beide können die Datei nicht öffnen, lt. Fehlermeldung
weist die Datei eine unbekannte Fehlermeldung auf (ist aber *.avi, mehrfach kontrolliert).
Media ist die gleiche Datei wie auch in der ersten Prozedur benutzt.

Weiß jemand Rat ?

BS : Win10 und Win7, beide 64Bit, gleiches Ergebnis.
Markus H.

Geändert von markus5766h ( 7. Jan 2017 um 13:01 Uhr)
  Mit Zitat antworten Zitat