![]() |
Hilfe zur Verwendung von if benötigt
Guten Tag.
Ich bin schon öfter in diesem Forum gewesen . Also habe diesmal ein problem ich muss was mit if machen aber da ich mich damit noch nicht so dolle beschäftigt habe naja..... (ich will das er wenn die anwendung nicht gestarted geht was in die memo schreibt.) Also hier mein Quelltext.
Delphi-Quellcode:
[edit=SirThornberry]Titel ausführlicher formuliert - Mfg, SirThornberry[/edit]
procedure TForm1.Button1Click(Sender: TObject);
begin Memo1.Lines.add ('Starting xxx'); ShellExecute(Handle, 'open', PChar('\xxx\xxx.exe'), nil, nil, SW_SHOW); if True then memo1.Lines.add ('Correct'); if false then memo1.lines.add ('incorrect'); |
Re: if hilfe
edit: O-Ha, wenn ShellExecute kein Boolean sondern ein Handle zurückgibt, haben meine Nachredner natürlich recht, trotzdem kannst du hier die Struktur eines If befehls sehen
True ist immer Wahr, False is immer Unwahr. Du musst zunächst den Rückgabewert von ShellExecute in einer Variablen speichern und diese dann auf True oder False prüfen, also so:
Delphi-Quellcode:
Alternativ kannst du auch das "=True" und "=False" weglassen, da eine If Abfrage immer nachguckt, ob der Ausdruck hinter dem Wort If Wahr oder Falsch ist. D.h. oben guckt er jetzt: "ist (MyResult=True) Wahr, dann schreibe Correct ansonsten "ist (MyResult=False) Wahr dann schreibe incorrect". Außerdem kannst du noch das schöne "else" benutzten, dann brauchst du keine zwei separaten If abfragen:
procedure TForm1.Button1Click(Sender: TObject);
var MyResult:boolean; begin Memo1.Lines.add ('Starting xxx'); MyResult:=ShellExecute(Handle, 'open', PChar('\xxx\xxx.exe'), nil, nil, SW_SHOW); if MyResult = True then memo1.Lines.add ('Correct'); if MyResult = False then memo1.lines.add ('incorrect'); end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var MyResult:boolean; begin Memo1.Lines.add ('Starting xxx'); MyResult:=ShellExecute(Handle, 'open', PChar('\xxx\xxx.exe'), nil, nil, SW_SHOW); if MyResult then memo1.Lines.add ('Correct') else memo1.lines.add ('incorrect'); end; |
Re: if hilfe
Delphi-Quellcode:
if ShellExecute(Handle, 'open', PChar('\xxx\xxx.exe'), nil, nil, SW_SHOW) < 33 then
memo1.lines.add ('incorrect') else memo1.lines.add ('correct'); |
Re: if hilfe
Soweit ich weiß, gibt ShellExecute ein Handle zurück (Genaues steht sicher hier:
![]()
Delphi-Quellcode:
Edit: Da war Deddy wohl schneller.
if ShellExecute(...) > 32 then
// erfolgreich else // nicht erfolgreich |
Re: if hilfe
Danke für die netten Antworten :-D
Jetzt bin ich um einiges Schlauer. Falls irgendjemand mir vieleicht wenn ich mal fragen habe helfen würde dann Addet mich :XaZ_2007@hotmail.de denn ich will ja nicht das ganze Forum zuspammen ;) |
Re: if hilfe
Delphi-Quellcode:
nu sagt er mir das Cardinal und Boolean inkompatible typen sind....
var MyResult:boolean;
begin MyResult:=ShellExecute(Handle, 'open', PChar('\xxx\xxx.exe'), nil, nil, SW_SHOW); if MyResult = True then memo1.Lines.add ('xxx.exe wurde nicht gefunden'); if MyResult = False then memo1.lines.add ('xxx wurde nicht gefunden,stellen sie sicher das xxx aktuell ist oder überprüfen sie den Pfad.'); end; |
Re: if hilfe
Der Rückgabewert ist, wie DeddyH und ich geschrieben haben, kein Boolean. Mach's also so, wie wir's dir gezeigt haben.
|
Re: if hilfe
Alles werte sind in ordnung,aber nun sagt er obwohl die exe nicht da ist (also nicht gestartet werden kann) das alles korrekt ist...
|
Re: Hilfe zur Verwendung von if benötigt
Zeig mal den Code.
|
Re: Hilfe zur Verwendung von if benötigt
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin if ShellExecute(Handle, 'open', PChar('\x33\x33.exe'), nil, nil, SW_SHOW) < 33 then memo1.lines.add ('x33.exe gefunden,starte Silkroad.') else memo1.lines.add ('bei dem versuche x33.exe zu öffnen ist ein Fehler aufgetreten,stellen sie sicher das sie den richtigen Pfad angegeben haben,oder das die x33.exe aktuell ist.'); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz