Извлеките содержимое cmd.exe IDE в текстовый файл, используя сценарии autohotkey - PullRequest
1 голос
/ 16 апреля 2009

Я пытаюсь извлечь содержимое IDE cmd.exe в текстовый файл с помощью сценариев autohotkey, т.е. одного test.ahk и его записи, как показано ниже:

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

Я не могу извлечь содержимое. Кто-нибудь может предложить, пожалуйста, правильный способ сделать извлечение?

Ответы [ 2 ]

2 голосов
/ 16 апреля 2009

Полученный текст обычно совпадает с тем, что показывает Window Spy для этого окна.

Window Spy не показывает текстовых элементов для окон CMD - то, что вы видите, не обязательно то, что вы можете получить:)

Что вы можете сделать, это смоделировать команды Выбрать все и Вставить, а затем использовать содержимое буфера обмена.

0 голосов
/ 16 апреля 2009

Я не верю, что вы можете извлечь содержимое окна cmd, не используя DllCall для непосредственного чтения памяти процесса.

Если вы просто хотите вывод команды CLI, такой как Grep или AWK, использование stdout через команду run должно работать. Честно говоря, я перестал полагаться на AHK, потому что такого рода вещи слишком неуклюжи.

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

Редактировать для комментариев: То, что вы хотите, выполнимо, но решение полностью зависит от того, как работает ваша IDE. Какое его поведение уникально для построения проекта? Если он создает временные файлы, вы можете перегрузить кнопку «сборки» подпрограммой AHK, которая отслеживает существование этих файлов, а затем проверяет дату изменения выходного исполняемого файла, чтобы убедиться, что сборка прошла успешно. Решение такого же типа работает, если среда IDE меняет заголовок окна при сборке. Будь умным. :)

В противном случае вам, возможно, придется установить перехват сообщений.

...