Autor |
Beitrag |
Andysaw
      
Beiträge: 30
|
Verfasst: Di 26.11.02 11:09
Hi,
ich muss Euch wieder mit einer Frage nerven. Ich möchte ein Proggi unter Delphi starten , dass einen Dateinamen in der Doseingabeebene verlangt(Mit Bestätigung). Man kann das vielleicht auch mit ner *.bat erledigen aber ehrlich gesagt sind meine Dos - Zeiten zu lange her....
Wenn mir da mal einer helfen könnte?
MfG
Andy
|
|
JeanvanHees
      
Beiträge: 146
win 2000
D6 Pers
|
Verfasst: Di 26.11.02 12:13
 ,Tag!
Haßt du mal gesucht nach shellexecute mit die such-function von AUQ?
Es haben hier schon mehrere postings gegeben die einige gute proceduren enthalten.
Ich glaub ich hab hier auch mal so eine procedur gepostet.
_________________ Cause even though I know things won't get any better, they can certainly never get much worse!
|
|
Andysaw 
      
Beiträge: 30
|
Verfasst: Di 26.11.02 13:22
Titel: noch immer nichts..
habe forum nach shellexecute durchsucht aber nichts helfendes gefunden
oder ich komm damit nich klar.
hier ist mein SE :
ShellExecute(0, nil, PChar('C:\Programm\Programm.exe'),nil,nil,SW_SHOW);
wörtlich abgeschrieben...
das programm(dosebene) erwartet dann eine eingabe (zb "SAW")
und dan halt ne bestätigung wie in dos halt.
ich hab sowas früher mal mit *.bat geregelt glaub ich aber
keine Ahnung mehr.
ich weiss nich wie ich das "SAW" und das "Enter" mit übergeben soll...
Ich bitte um Hilfe ...
MfG
Andy
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 26.11.02 13:26
Parameter übergeben ist kein Problem. Das Problem ist dann Eingaben in dem Konsolenprogramm zu machen. Das geht meines Wissens nur mit Pipes.
|
|
Andysaw 
      
Beiträge: 30
|
Verfasst: Di 26.11.02 13:33
naja das ist ja kein richtiger parameter
sondern ich sage dem programm damit welche quelldatei es
für seine berechnungen nutzen soll..
zb. SAW.dat
programm.exe -> welche dat ? -> saw.dat -> enter ->weiter gehts
das is eher eine eingabe denke ich ?
Ich brauch umbedingt hilfe(aber wie für einen anfänger
geschrieben)
MfG
Andy
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 26.11.02 13:35
Ich sagte doch die Eingabe mußt du über Pipes regeln. Nur, ich habe so was auch noch nie gemacht. Google doch einfach mal.
|
|
bis11
      
Beiträge: 1247
Erhaltene Danke: 2
Apple Mac OSX 10.11
|
Verfasst: Di 26.11.02 13:45
Hastes schon mal so probiert ?
Quelltext 1:
| ShellExecute(0, nil, PChar('C:\Programm\Programm.exe'),PChar('SAW'),nil,SW_SHOW); |
|
|
Andysaw 
      
Beiträge: 30
|
Verfasst: Di 26.11.02 13:51
danke , aber so gehts leider nicht...
er übernimmt das "saw" nicht ...
MfG
Andy
|
|
JeanvanHees
      
Beiträge: 146
win 2000
D6 Pers
|
Verfasst: Di 26.11.02 14:23
Ich weiß nicht ob du hier schon mal an gedacht haßt:
Wenn du über dos ein programm willst öffnen, gebrauchst du (nehm ich mal an) das cmd.exe (bei NT in die system32 directory von windows).
Wenn du cmd.exe öffnest wird er standard in die directory stehen wo cmd.exe steht (das heißt das nur commandos in diese directory ausgeführt werden).
Du könntest dieses problem lösen durch cmd.exe nach die directory zu kopieren wo das program steht was du ausfuhren willst.
So ist es möglich das program zu öffnen und parameter an das programm weiter zu geben.
_________________ Cause even though I know things won't get any better, they can certainly never get much worse!
|
|
Andysaw 
      
Beiträge: 30
|
Verfasst: Di 26.11.02 14:27
das hört sich alles gut an , aber ich hab davon nichts verstanden
ausser das cmd dafür sorgt dass das was ich tue nur in einem
speziellen pfad passiert..
kannst du ein ganz einfaches beispiel bringen ?
MfG
Andy
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 26.11.02 14:30
Was hat denn die cmd.exe damit zu tun?
Wie wäre es, wenn er den kompletten Pfad zu dieser SAW Datei als Parameter mit übergibt? 
|
|
Andysaw 
      
Beiträge: 30
|
Verfasst: Di 26.11.02 14:34
(Haareausreiss)
Nein auch mit dem kompletten pfad als Pchar is nich , auch nich
wenn der pfad oder die eingabedatei in einer *.TxT steht die ich ihm als PChar verkaufe..
Ich finde die rege Teilname top..
(Hoffentlich hat einer ne Lösung)
MfG
Andy
|
|
JeanvanHees
      
Beiträge: 146
win 2000
D6 Pers
|
Verfasst: Di 26.11.02 14:43
Naja, wenn ich einen commando an ein programm in eine DOS-environment weitergeben möchte, gebrauche ich das cmd.exe.
also, du könntest als parameter: /k saw.bla (das k war glaub ich um zu runnen ohne das cmd schirm zu verbergen...such mal in die hilfe von cmd nach andere commandos)
und als programm cmd.exe (cmd dan nach folder von saw.bla erst kopieren)
Vielleicht hat luckie recht un ist das umstandlich, aber bei mir hat es so mal functioniert.
Ich kann aber das vorbild nicht weiter ausarbeiten, weil ich delphi nicht dabei habe.
_________________ Cause even though I know things won't get any better, they can certainly never get much worse!
|
|
Andysaw 
      
Beiträge: 30
|
Verfasst: Di 26.11.02 14:48
Ich hab das nu wie ein Uhrmensch erledigt :
Start.bat
Inhalt : echo dat | programm.exe
die start.bat in shellexecut rein und gut war..
Junge schwere Geburt..
proggi beendet sich aber sofort (ich denke wegen dem
zugriffs problem,das muss ich noch schaffen)
danke leute ...!
MfG
Andy
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 26.11.02 14:59
LOL
Was ist denn ein Uhrmensch?
|
|
Andysaw 
      
Beiträge: 30
|
Verfasst: Di 26.11.02 15:06
Tja also darauf weiss ich jetzt echt nichts mehr zu sagen ...
Oh mann ...
naja werd wohl mürbe
LOL
Aber : Dateizugriff ?
Noch Ideen ?
MfG
Andy
|
|