Запуск командного файла при выходе

У меня есть командный файл, который делает каталог на H:\ и копирует все мои работы CS из I:\ в H:\ (наш I:\ диск не всегда доступен). Есть ли способ запустить этот пакетный файл при выходе из системы, чтобы мои файлы всегда обновлялись, БЕЗ использования gpedit.msc (доступ закрыт)?

Я работаю на компьютере ученика, поэтому, скорее всего, установка программного обеспечения не будет практической, но я мог бы попробовать. И помощь будет высоко ценится =)

Или есть способ запустить командный файл и не запускать команды до тех пор, пока.. 8:50 до звонка, чтобы я мог просто поместить его в папку "Автозагрузка", и он мог работать в это время?

Я подумал об этом еще немного, и самым простым способом было бы установить запланированное задание на 8:50 для его запуска... но было бы хорошо, если бы я знал, как это сделать в командном файле. У меня нет доступа к командам shutdown -l, и я не верю, что это все равно поможет, потому что я хочу, чтобы скрипт запускался, когда я нажимал "Log Off".

6 ответов

Решение

В конце концов я просто использовал " Запланированные задачи" и настроил запуск командного файла в 8:50, и это должно сработать.

Это должно сделать свое дело. Сохраните как файл REG и импортируйте, если это не заблокировано. Это эффективно создает запись сценария выхода из системы.

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System\Scripts\Logoff\0\0]
"Script"="H:\your-script-here.bat"
"Parameters"=""
"ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00 ,00,00,00,00,00

Сохраните ваш скрипт, чтобы сделать копию в корневом каталоге вашего диска H:.

Еще один вариант, аналогичный тому, который уже предложил Tim Brigham - сохранить приведенный ниже текст в виде файла .reg:

Редактор реестра Windows, версия 5.00

[HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Групповая политика \ Сценарии \ Выход из системы \ 0]
"GPO-ИД" = "LocalGPO"
"SOM-ID" = "Local"
"FileSysPath" = "C: \ Windows \ System32 \ GroupPolicy \ User"
"DisplayName" = "Локальная групповая политика"
"GPOName" = "Локальная групповая политика"
"PSScriptOrder" = DWORD: 00000001

[HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Групповая политика \ Сценарии \ Выход из системы \ 0 \ 0]
"Сценарий" = "H: \ yourScriptFileName.bat"
"Параметры" = ""
"IsPowershell" = DWORD: 00000000
"ExecTime" = гекс (б): 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

Это похоже на то, как вы делаете это самостоятельно из редактора групповой политики (gpedit.msc).

Вы можете поместить эту строку в конец вашего командного файла

shutdown -l

это отключит вас, как только скрипт будет выполнен

Я не уверен, какая версия Windows добавила эту программу, но вы могли бы использовать waitfor введите команду приостановить пакетный файл на 3000 секунд (т.е. на 50 минут), а затем продолжите выполнение команды копирования.

Это определенно доступно в Windows 7, почти наверняка в Vista, а не в XP. Однако он может быть доступен в доступных для загрузки служебных программах Windows 2003 Resource Kit, которые будут работать на XP.

Вероятно, есть некоторый пакетный трюк, который также позволяет приостановить выполнение сценария на определенное время.

Пуск -> Выполнить и введите "gpedit.msc"

Под Конфигурация пользователя -> Настройки Windows -> Сценарии (вход / выход из системы) вы можете добавить свои сценарии

Другие вопросы по тегам