Entwickler-Ecke
Dateizugriff - Shell-Execute, zweites Programm wird nicht gestartet.
kongreddgrass - Di 26.08.03 20:32
Titel: Shell-Execute, zweites Programm wird nicht gestartet.
Hi
ich habe in einem zweiten Form für ShellExecute die uses schon eingebunden. Also keine Fehlermeldung. Nur verwende ich ShellExecute zweimal. Also kurz gesagt: 1 Programm wird gestartet, 2 Programm wird nicht gestartet, als ob kein OnClick-Ereignis hingemacht worden ist. :x
Hier mal der Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40:
| unit Unit2;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, ShellApi;
type TForm2 = class(TForm) MainMenu1: TMainMenu; Programm1: TMenuItem; N10: TMenuItem; N11: TMenuItem; procedure N11Click(Sender: TObject); procedure N10Click(Sender: TObject); private public end;
var Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.N11Click(Sender: TObject); begin ShellExecute(Application.Handle, 'open', 'D:\Audiograbber\audiograbber.exe', nil, nil, SW_SHOW); end;
procedure TForm2.N10Click(Sender: TObject); begin ShellExecute(Application.Handle, 'open', 'D:\Borland\Delphi6\Bin\delpi32.exe', nil, nil, SW_SHOW); end;
end. |
Woran liegt das Problem? Schaut alles richtig aus, nur..... :(
Mike
Moderiert von
Tino: Delphi-Tags hinzugefügt.
Terra23 - Di 26.08.03 21:11
... nur?
Wenn ich von MathiasSimmack richtig gelernt habe, muß es
heißen. Wenn ich nicht richtig gelernt habe, kriege ich jetzt sicher Haue. :mrgreen:
MSCH - Di 26.08.03 21:21
ganz einfach ein Rechtschreibfehler!
ShellExecute(Application.Handle, 'open', 'D:\Borland\Delphi6\Bin\delpi32.exe', nil, nil, SW_SHOW);
oje oje oje
grez
msch
kongreddgrass - Di 26.08.03 21:44
Oje oje oje oje
tschuldigung, hab nicht darauf aufgepasst.
:twisted::twisted::twisted:
Danke
Mike
Brueggendiek - Di 26.08.03 23:02
Hallo!
@Terra23: PChar ist nur bei Variablen oder Ausdrücken nötig, bei Literalen (im Programmtext stehende Zeichenfolgen wie im Problemfall) regelt Delphi das von alleine!
Gruß
Dietmar Brüggendiek
Terra23 - Di 26.08.03 23:50
:oops:
Das wußte ich nicht. Aber was ist eine Literale?
Delete - Mi 27.08.03 00:58
Eine Zeichenfolge.
Delete - Mi 27.08.03 08:37
Mit anderen Worten:
Delphi-Quelltext
1: 2: 3: 4:
| ShellExecute(self.Handle, 'open', 'c:\...\delphi32.exe', |
aber
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| szFilename := 'c:\...\delphi32.exe'; ShellExecute(self.Handle, 'open', szFilename, );
ShellExecute(self.Handle, 'open', pchar(szFilename); |
:)
kongreddgrass - Mi 27.08.03 11:05
Danke für die Antworten.
Gruß Mike
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!