
Cada guia na rede diz para usar RUNDLL USER.EXE,ExitWindows que funciona... a partir do comando de execução
Porém, quando executado a partir de um arquivo bat, este comando, embora funcione, solicita confirmação para encerrar os processos 'restantes'. Esse processo é a própria linha cmd. Não consegui chamá-lo com 'CALL', mas como a chamada cria uma nova linha de comando, espero que o resultado seja o mesmo.
Esta é uma pergunta apenas do Windows 95, é para uma máquina virtual desligar automaticamente após executar um aplicativo. A ideia é basicamente ter um script na pasta de programas de inicialização que inicia o aplicativo, espera até que ele saia com START/WAIT e depois usa algo para desligar automaticamente as janelas.
Responder1
Se você definir seu programa como shell em vez de explorer, ele será executado automaticamente e o Windows será desligado quando o programa for encerrado.
De uma postagem que fiz em 2001
Copie-o para c:\windows. Se você editar c:\windows\system.ini
e alterar
shell=explorer.exe
para
shell=progman.exe
então seu computador iniciará no modo de interface win3.11.
Dos meus 15 anos desde a última atualização do sitehttp://www.mvps.org/serenitymacros
Saindo do Windows
As três primeiras seções são do Tweak95, disponíveis na página de downloads. A quarta seção são as mudanças no Win98.
Desligue o Windows
Um comando para sair do Windows 95. Isso só pode ser usado para desligar, não reiniciar ou sair para msdos. Para sair para msdos digite ExitToMsDos que executa o arquivo Pif de mesmo nome. Coloque o comando em um atalho ou arquivo em lote.
C:\WINDOWS\RUNDLL32.EXE user.exe,ExitWindows
Reinicie o Windows
Para reiniciar o Windows, copie Sair para Dos.pif (a parte pif está oculta) e copie e renomeie-o para Reiniciar o Windows. Edite a planilha do programa nas propriedades. Altere a linha de comando para:
C:\WINDOWS\command.com /C exit
Certifique-se de que Fechar ao sair esteja marcado. Na caixa de diálogo Avançado, marque Usar configuração MSDos atual para sair e reiniciar o Windows sem reinicializar. Marque Avisar antes de entrar no modo MSDos se for necessária confirmação antes de sair e reiniciar. O modo MSDos deve ser verificado.
Uma forma alternativa é usar a função ExitWindowsExec. Isso sai para o MSDos para executar um programa, mas como nenhum programa é fornecido, o Windows é reiniciado. Insira um atalho ou caixa de diálogo Iniciar - Executar.
C:\WINDOWS\RUNDLL.EXE user.exe,ExitWindowsExec
Caixa de diálogo Desligar
Este arquivo reg definirá a escolha padrão na caixa de diálogo Desligar. O Windows 95B e o IE4 lembram a última configuração escolhida, portanto, para definir o padrão para essas versões (em vez da última ação), adicione a seguinte linha de comando a C:\Windows\Winstart.bat
(crie, Winstart.bat
se necessário). Lembre-se de usar o nome curto do filke.
Regedit C:\<Path to Reg File>\ShutDown.Reg
Ou esta linha de comando para um atalho e coloque-o na pasta StartUp.
Regedit /s C:\<Path to Reg File>\ShutDown.Reg
REGEDIT4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer]
'1=first choice in dialog box, 2=second choice, ect.
"Shutdown Setting"=dword:00000001
Através do SHExitWindowsEx
O uso das funções de saída do Windows User.exe e User32.dll não permite nenhum controle sobre o tipo de desligamento realizado, pois os parâmetros não são passados, eles operam como se 0 fosse passado - que é desligamento para ExitWindows e Logoff para ExitWindowsEx. Uma função não documentada SHExitWindowsEx em Shell32.dll, que é o que o Explorer parece usar, usa parâmetros.
rundll32.exe shell32.dll,SHExitWindowsEx [optional number in hex]
Valor da ação em hexadecimal
EWX_LOGOFF 0
EWX_SHUTDOWN 1
EWX_REBOOT 2
EWX_FORCE 4
EWX_POWEROFF
for machines that turn off their own power 8
Esses valores podem ser somados, por exemplo, 5 é o desligamento e força o fechamento dos aplicativos e um logoff implícito.
Observe que não há reinicialização sem reinicialização. Isso requer que um parâmetro 42 (hex) seja passado para ExitWindows em User.exe. Isso não pode ser feito na linha de comando. Veja a dica acima para uma solução alternativa.
Responder2
%windir%\System32\shutdown.exe -r -f
Adicionar -f
força o sistema a desligar ou reiniciar. no Windows 95, o caminho seria C:\Windows\Command referente aesse site
Responder3
Tente chamar o comando acima para start
permitir que você o execute em segundo plano e não deixe um cmd.exe esperando. Não conheço a sintaxe 9x de cara, mas faço uma start /?
na linha de comando.
Responder4
Existem vários métodos de desligamento automatizado para computadores contemporâneos (vejaesse linkeesse), mas o Windows 95 é tão antigo que pode não funcionar. (Ainda assim, tente a sorte.) Se tudo falhasse, temo que sua única opção seria criar uma você mesmo; ou seja, crie um aplicativo do Windows 95 que desligue o computador.