1

У меня установлена Windows 7 Ultimate с режимом Windows XP .

В моей операционной системе (Windows 7) у меня есть командный файл, который выполняет некоторые команды. Я должен также выполнить три программы, которые установлены в моем режиме Windows XP (Windows 'debug.exe и две другие программы). Есть ли способ запустить их прямо из моего командного файла?

Спасибо!

1 ответ1

2

Дешевый и веселый подход для достижения этой цели заключается в использовании общего каталога (который, вероятно, будет иметь разные пути в XP и W7, хотя вы можете использовать букву диска для общего ресурса и сделать его одинаковым на обоих). Вы можете просто использовать наличие командных и ответных файлов для синхронизации выполнения в каждой системе.

В XP у вас постоянно работает командная оболочка с циклом ядра:

:Loop
sleep 10
if not exist {XPshare}\XPcommand.cmd goto Loop
del {XPshare}\XPresponse.txt
call {XPshare}\XPcommand.cmd > {XPshare}\XPcommand.txt
ren {XPshare}\XPcommand.txt XPresponse.txt
del {XPshare}\XPcommand.cmd
goto Loop

Вы можете добавить запись в журнал и в противном случае улучшить сценарий. После команды call вы можете добавить echo {unique string}Completion status = %errorlevel% >> {XPshare}\XPcommand.txt и получить это в пост-анализе.

Всякий раз, когда вы хотите выполнить команду XP из W7, вызовите сценарий cmd с командой, переданной в его параметрах и содержащей:-

del {W7share}\XPresponse.txt
echo %* > {W7share}\XPcommand.cmd
:Loop
sleep 2
if exist {W7share}\XPcommand.cmd goto Loop

Когда вы вернетесь из этого, вы можете проанализировать XPresponse.txt и выполнить любую постобработку. Не обязательно удалять XPresponse.txt , но он просто гарантирует, что никакие предыдущие ответы не могут перепутать любые проверки W7.

Существуют бесчисленные версии sleep.exe , который приостанавливается на несколько секунд, включая две от MS, в службах для Unix и в Windows Resource Kit. Количество секунд для выбора - это баланс между отзывчивостью и накладными расходами на опрос. Я предложил более короткий интервал на W7, потому что опрос выполняется только во время выполнения команды XP, в то время как на XP это делается в любое другое время.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .