Mit VB6 Eingabe in CommandLine

olliminator

Grünschnabel
Hallo zusammen.

Habe da ein nicht ganz alltägliches Problem. Vielleicht kann mir ja jemand von euch helfen:

Ich muss mit VB ein .exe-File aufrufen mit Parametern (Eingabe in cmd-Line). Bis hierher kein Problem. Diese Datei schreibt Werte in ein Textfile.
Damit ich keinen Überlauf bekomme, muss ich das Programm nach einem bestimmten Zyklus abbrechen. Dazu muss ich ein Q + Enter in die cmd-Line, in der das Programm läuft eingeben. Und da ist der Haken.
Wie bekomme ich die Eingabe in das geöffnete cmd-Fenster aus VB heraus hin

Wäre super, wenn mir jemand helfen könnte.

Gruß oli
 
Ich klink mich mal hier ein. Ich suche nach einer Moeglichkeit in VBA 6 folgendes zu realisieren: cmd set user=irgendeinuser

wie krieg ich das hin? es kann nicht sonderlich komplex sein
 
Leider komme ich mit keiner Lösung weiter.

Mein Programm lässt sich nicht über den Shell-Befehl ausführen, da der Programmaufruf wie folgt aussieht:

Code:
'appID = Shell("C:\Documents and Settings\fuwlee13\Desktop\Logger\Smartspy\Smartspy.exe 5556 5555 >Log" & z & ".csv", normalfocus)

das tut leider nicht.

Auch die Senkeys Geschichte klappt null!!

Als Test habe ich die das cmd-Fenster geöffnet und versuche jetzt den Fokus zu setzen mit
Code:
appActivate appID
wie im Beispiel beschrieben.

Da bekomme ich dann Laufzeitfehler 5: ungültiger Prozeduraufruf oder ungültiges Argument?

P.S. @ironmonkey2: probiers mal mit der Sendkeys_Methode; wenn das nicht tut würd ich dich bitten ein neues Topic aufzumachen!
 
Bei Shell musst du deinen gesamten String (wenn du ihn per Code zusammensetzen willst) erst in eine Variable schreiben und dann per Shell ausführen.

Und noch was, bei Shell musst du die 8.3-DOS-Namen (und Ordner) verwenden, ein Leerzeichen wäre dabei nämlich schon ein Absatz zu den Parametern. Hier gibts ein Beispiel zur Umwandlung. Alternativ kannst du das ganze auch in Anführungszeichen packen.


Der Doc!
 
Danke für deine Hilfe.

Hab das ganze jetzt doch über das cmd-Fenster und SendKeys hinbekommen. Das Problem war, dass der Aufruf des cmd-Fensters 3 ms dauert und der Code natürlich nicht wartet.

Hab jetzt einfach ein Sleep von 3 ms eingefügt und jetzt läufts.
 

Neue Beiträge

Zurück