É possível executar um programa no Modo Windows XP diretamente de um arquivo de lote que esteja no Windows 7?

1

Eu tenho o Windows 7 Ultimate com o Windows XP Modo instalado.

No meu SO host (Windows 7) eu tenho um arquivo em lotes que executa alguns comandos. Eu tenho que executar também três programas que estão instalados no meu Windows XP Mode (debug.exe do Windows e dois outros programas). Existe uma maneira de executá-los diretamente do meu arquivo de lote?

Obrigado!

    
por Teo Zec 31.10.2014 / 15:37

1 resposta

2

Uma abordagem barata e alegre para conseguir isso é através de um diretório compartilhado (que provavelmente terá caminhos diferentes no XP e W7, embora você possa usar uma letra de unidade para o compartilhamento e torná-lo o mesmo em ambos). Você pode simplesmente usar a presença de arquivos de comando e resposta para sincronizar a execução em cada sistema.

No XP você tem um shell de comando rodando constantemente com o loop principal: -

: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

Você pode adicionar o registro em log e refinar o script. Depois do comando call , você pode adicionar echo {unique string}Completion status = %errorlevel% >> {XPshare}\XPcommand.txt e pegar na pós-análise.

Sempre que você quiser executar um comando XP a partir do W7, chame um script cmd com o comando passado em seus parâmetros e contendo: -

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

Quando você retornar disso, poderá analisar XPresponse.txt e realizar qualquer pós-processamento. Não é estritamente necessário excluir XPresponse.txt , mas apenas assegura que nenhuma resposta anterior possa confundir quaisquer verificações W7.

Existem inúmeras versões de sleep.exe , que são suspensas por alguns segundos, incluindo duas do MS, em Serviços para Unix e no Windows Resource Kit . O número de segundos para escolher é um equilíbrio entre a capacidade de resposta e a sobrecarga de pesquisa. Eu sugeri um intervalo mais curto no W7, porque o polling é feito somente enquanto o comando XP está sendo executado, enquanto no XP ele é feito em todos os outros momentos.

    
por 10.11.2014 / 19:51