1

Каждое руководство в сети говорит об использовании RUNDLL USER.EXE, ExitWindows, который работает ... из команды запуска

Однако при запуске из файла bat эта команда, хотя и работает, запрашивает подтверждение, чтобы убить «оставшиеся» процессы. Этот процесс является самой строкой cmd. Я не смог вызвать его с помощью CALL, но так как call создает новую командную строку, я ожидаю, что результат будет таким же.

Это только вопрос Windows 95, это для виртуальной машины для автоматического выключения после запуска приложения. Основная идея заключается в том, чтобы в папке «Автозагрузка программ» был скрипт, который запускает приложение, ждет, пока оно не закроется с помощью START /WAIT, а затем использует что-то для автоматического выключения окон.

4 ответа4

1

Если вы установите свою программу в качестве оболочки вместо проводника, то она будет автоматически запускаться, и окна будут закрываться при выходе из программы.

Из поста, который я сделал в 2001 году

Скопируйте его в c:\windows. Если вы редактируете c:\windows\system.ini и меняете

shell=explorer.exe 

в

shell=progman.exe

тогда ваш компьютер запустится в режиме интерфейса win3.11.


С моего 15-летия с момента последнего обновления веб-сайта http://www.mvps.org/serenitymacros

Выход из Windows

Первые три раздела от Tweak95 доступны на странице загрузок. Четвертый раздел - изменения с Win98.

Завершить работу Windows

Команда для выхода из Windows 95. Это можно использовать только для выключения, а не для перезапуска или выхода в MSDOS. Для выхода в msdos введите ExitToMsDos, который запускает файл Pif с тем же именем. Поместите команду в ярлык или командный файл.

C:\WINDOWS\RUNDLL32.EXE user.exe,ExitWindows

Перезагрузите Windows

Для перезапуска Windows скопируйте Exit To Dos.pif (часть pif скрыта), скопируйте и переименуйте его в Restart Windows. Отредактируйте программный лист в свойствах. Измените командную строку на:

C:\WINDOWS\command.com /C exit

Убедитесь, что Close On Exit отмечен. В диалоговом окне «Дополнительно» установите флажок «Использовать текущую конфигурацию MSDos» для выхода и перезапуска Windows без перезагрузки. Проверьте Warn перед входом в режим MSDos, если требуется подтверждение перед выходом и перезапуском. Режим MSDos должен быть проверен.

Альтернативный способ - использовать функцию ExitWindowsExec. Это выходит из MSDos для запуска программы, но, поскольку ни одна из программ не предоставляется, Windows перезапускается. Нажмите на ярлык или диалоговое окно «Пуск - Выполнить».

C:\WINDOWS\RUNDLL.EXE user.exe,ExitWindowsExec

Диалоговое окно выключения

Этот reg файл установит выбор по умолчанию в диалоговом окне Завершение работы. Windows 95B и IE4 запоминают последний выбранный параметр, поэтому для установки значения по умолчанию для этих версий (а не последнего действия) добавьте следующую командную строку в C:\Windows\Winstart.bat (при необходимости создайте Winstart.bat ). Не забудьте использовать короткое имя filke.

Regedit C:\<Path to Reg File>\ShutDown.Reg

Или эту командную строку для ярлыка и положить его в папку автозагрузки.

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

Через SHExitWindowsEx

Использование User.exe & User32.dll Выход Функции Windows не позволяют контролировать, какой тип завершения выполняется, поскольку параметры не передаются, они работают так, как будто передан 0 - что является отключением для ExitWindows и Logoff для ExitWindowsEx. Недокументированная функция SHExitWindowsEx в Shell32.dll, которую, похоже, использует Explorer, принимает параметры.

rundll32.exe shell32.dll,SHExitWindowsEx [optional number in hex]

Значение действия в шестнадцатеричном формате

EWX_LOGOFF 0 
EWX_SHUTDOWN 1 
EWX_REBOOT 2 
EWX_FORCE 4 
EWX_POWEROFF
for machines that turn off their own power 8 

Эти значения могут быть добавлены вместе, например, 5 - завершение работы и принудительное закрытие приложений и неявный выход из системы.

Обратите внимание, что это не перезагрузка без перезагрузки. Для этого необходимо передать параметр 42 (шестнадцатеричный) в ExitWindows в User.exe. Это не может быть сделано из командной строки. Смотрите совет выше для обхода.

0

Попробуйте вызвать приведенную выше команду с помощью start чтобы она запускалась в фоновом режиме и не оставляла cmd.exe в ожидании. Я не знаю синтаксис 9x на макушке, но сделаю start /? в командной строке.

0

Есть несколько методов автоматического отключения для современных компьютеров (см. Эту ссылку и эту), но Windows 95 настолько старая, что я могу не работать. (Тем не менее, попытай счастья.) Если все не получится, я боюсь, что вы могли бы создать его самостоятельно; т.е. создайте приложение для Windows 95, которое выключит компьютер.

0
%windir%\System32\shutdown.exe -r -f

Добавление -f заставляет систему выключаться или перезагружаться. в Windows 95 путь будет C:\Windows\Command со ссылкой на этот сайт

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