2009-04-16 4 views
1

Ich versuche, den Inhalt der cmd.exe IDE in eine Textdatei mit autohotkey Skripten, dh eine test.ahk und seine geschrieben wie folgt:Entpacken Sie den Inhalt der cmd.exe IDE in eine Textdatei mit autohotkey Skripten

WinGetText, text, "C:\WINDOWS\system32\cmd.exe" 
FileAppend, %text%, C:\ThreePartition\ACTUAL.txt 

Ich bin nicht in der Lage, den Inhalt zu extrahieren. Kann jemand bitte den richtigen Weg vorschlagen, die Extraktion durchzuführen?

Antwort

2

Der abgerufene Text entspricht im Allgemeinen dem, was Window Spy für dieses Fenster anzeigt.

Der Window Spy keine Textelemente für CMD-Fenster zeigt - was Sie sehen, ist nicht unbedingt das, was man :)

bekommen

Was Sie tun können, ist die Select All und Einfügen-Befehle zu simulieren, und verwenden Sie dann der Inhalt der Zwischenablage

+0

Hallo, kann mir jemand plz helfen, da ich bin sehr neu zu AutoHotkey ... Wenn ich den Inhalt aus dem cmd.exe Fenster extrahieren möchte, hw soll ich es tun ?? – Maddy

0

Ich glaube nicht, dass Sie den Inhalt eines cmd-Fensters extrahieren können, ohne irgendwie DllCall zu verwenden, um den Prozessspeicher direkt zu lesen.

Wenn Sie nur die Ausgabe eines CLI-Befehls wie Grep oder AWK möchten, sollte die Verwendung von stdout über den Befehl run funktionieren. Ehrlich gesagt, habe ich aufgehört, mich auf AHK zu verlassen, weil diese Art von Dingen einfach zu klobig ist.

http://www.autohotkey.com/docs/commands/Run.htm.

Für Kommentare bearbeiten: Was Sie wollen, ist machbar, aber die Lösung hängt vollständig davon ab, wie Ihre IDE funktioniert. Welches Verhalten hat es beim Bau eines Projekts? Wenn temporäre Dateien erstellt werden, können Sie die Schaltfläche "Erstellen" mit einer AHK-Subroutine überladen, die auf die Existenz dieser Dateien achtet und dann das Änderungsdatum der ausführbaren Ausgabedatei überprüft, um festzustellen, ob der Build erfolgreich war. Die gleiche Lösung funktioniert, wenn die IDE beim Erstellen des Fensters ihren Fenstertitel ändert. Sei schlau. :)

Ist das nicht möglich, müssen Sie möglicherweise einen Nachrichten-Hook installieren.

+0

hey duke, also welche Methode würden Sie vorschlagen, um den gesamten Inhalt meiner IDE zu einigen Text-Datei zu extrahieren. Redirect-Operatoren in .bat-Datei scheint oben funktioniert nicht richtig. – Maddy

+0

"Der ganze Inhalt" einer IDE könnte eine Menge Dinge bedeuten. Wenn ich den Quellcode manipulieren wollte - etwa für statische Analysen -, würde ich ein Bash-Skript unter Cygwin schreiben. Alles hängt von der Aufgabe ab. –

+0

Duke, ich möchte nur ein Protokoll erstellt werden, wenn meine IDE die Ausführung beendet. Das Protokoll sollte zeigen, ob der Build oder die Kompilierung erfolgreich ist oder nicht oder ob es Fehler in der Quelldatei usw. enthält. Plz zurück zu mir, wenn Ich bin nicht klar. Vielen Dank – Maddy

Verwandte Themen