Entwickler-Ecke
Windows API - ShellExecute funzt nicht
Bergmann89 - So 30.04.06 13:29
Titel: ShellExecute funzt nicht
Hi,
ich wollte meinem Kumpel einen Timer baun, der den Computer nach ner bestimmten Zeit ausschaltet. Dazu hab'sch mir ne *.bat gemacht und wollte die dann von dem Proggramm starten lassen, das geht aber nicht. Er findet keinen Fehler wenn ich das compile aber er führt den Befehl auch nicht aus !
Quelltext sieht ungefähr so aus:
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm1.Button1Click(Sender: TObject); var open: PAnsiChar; begin ShellExecute(Application.Handle,open,'aus_s.bat',nil,nil,SW_MINIMIZE); end; |
Hab auch nochma das Prog hochgeladen.
Wäre nett wenn ihr mir da helfen könntet !
MfG BErgmann
Moderiert von
Christian S.: Topic aus VCL (Visual Component Library) verschoben am Mo 01.05.2006 um 19:36
Moderiert von
Narses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.
Moderiert von
Narses: Anhang wegen Virenbefall gelöscht.
Levier - So 30.04.06 14:02
Versuchs mal mit:
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm1.Button1Click(Sender: TObject); var open: PAnsiChar; begin ShellExecute(Application.Handle,'open','aus_s.bat',nil,nil,SW_MINIMIZE); end; |
Bergmann89 - So 30.04.06 14:15
Jep, funzt.
Thx Bergmann.
Bergmann89 - Mo 01.05.06 19:11
So hab das jetzt alles so wie ich wollte.
und bloß noch ein Problem:
Delphi-Quelltext
1: 2: 3: 4:
| procedure TForm1.Button1Click(Sender: TObject); begin ShellExecute(Application.Handle,'open', OpenDialog1.FileName,nil,nil,SW_MINIMIZE); end; |
Und zwar will ich ds der die Datei aus dem OpenDialog1 öffnen, weiß aber nicht wie, da kommt ein fehler.
MfG Bergmann
Levier - Di 02.05.06 16:18
so sollte es funktionieren:
Delphi-Quelltext
1: 2: 3: 4:
| procedure TForm1.Button1Click(Sender: TObject); begin ShellExecute(Application.Handle,'open',PChar(OpenDialog1.FileName),nil,nil,SW_MINIMIZE); end; |
Bergmann89 - Mi 03.05.06 09:58
Jo, danke.
Geht eins-a.
MfG Bergmann.
Jakob Schöttl - Do 04.05.06 17:53
Titel: ?
Warum hat denn der Compiler keine Meldung ausgegeben, als du
Delphi-Quelltext
1:
| ShellExecute(Application.Handle,open,'aus_s.bat',nil,nil,SW_MINIMIZE); |
eingegeben hast? Eigentlich müsste doch "undefinierter bezeichner" kommen, wegen dem "Open". Oder war "Open" ein string oder PChar?
Bloß aus Interesse!
jakobwenzel - Do 04.05.06 19:05
Titel: Re: ?
bokaj hat folgendes geschrieben: |
Warum hat denn der Compiler keine Meldung ausgegeben, als du
Delphi-Quelltext 1:
| ShellExecute(Application.Handle,open,'aus_s.bat',nil,nil,SW_MINIMIZE); |
eingegeben hast? Eigentlich müsste doch "undefinierter bezeichner" kommen, wegen dem "Open". Oder war "Open" ein string oder PChar?
Bloß aus Interesse! |
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm1.Button1Click(Sender: TObject); var open: PAnsiChar; begin ShellExecute(Application.Handle,open,'aus_s.bat',nil,nil,SW_MINIMIZE); end; |
P.S.: Eigentlich sollte die ganze Zeile gehighlightet werden, is wohl n Bug
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!