групповая политика (АвтоЗапуск при выключении)
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
групповая политика (АвтоЗапуск при выключении) - 2010-11-12 05:31:36.210000
|
|
|
orientalkenso
Сообщений: 5
Оценки: 0
Присоединился: 2010-11-12 05:05:44.683333
|
Привет народ. Воспользуюсь первым вопросом, На С шарпе пишу програмку и нужно что бы она запускалась при выключениях. Ресурсоемкая и время не мало занимает(от 1мин, смотря на настройки.) Писал пробник с таймером на 5мин. Все работает. Через редактор груп. пол. вручную записываю. Но вот нужно что бы программка при установке сама регилась там, или если задать в настройках, регилась. Вручную просмотрел регистры и увидел что в quote:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0] "GPO-ID"="LocalGPO" "SOM-ID"="Local" "FileSysPath"="C:\\WINDOWS\\System32\\GroupPolicy\ \Machine" "DisplayName"="Local Group Policy" "GPOName"="Local Group Policy" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0\0] "Script"="C:\\windows\\system32\\ntbootos.bat" "Parameters"="" "ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Startup] [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts] [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\ Shutdown] [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\ Shutdown\0] "GPO-ID"="LocalGPO" "SOM-ID"="Local" "FileSysPath"="C:\\WINDOWS\\System32\\GroupPolicy\ \Machine" "DisplayName"="Local Group Policy" "GPOName"="Local Group Policy" [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\ Shutdown\0\0] "Script"="C:\\windows\\system32\\ntbootos.bat" "Parameters"="" "ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Scripts\ Startup] записывается. Я сделал так - quote:
string commandline = "\"" + Application.ExecutablePath + "\" %1 Start"; Microsoft.Win32.RegistryKey regkey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\Policies\\Microsoft\\Windows\\System\\Scripts\\Shutdown\\0\\0"); regkey.SetValue("Parameters", "Start"); regkey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Group Policy\\State\\Machine\\Scripts\\Shutdown\\0\\0"); regkey.SetValue("Parameters", "Start"); regkey.Close(); Microsoft.Win32.RegistryKey regkey2 = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\Policies\\Microsoft\\Windows\\System\\Scripts\\Shutdown\\0\\0"); regkey2.SetValue("Script", Application.ExecutablePath); regkey2 = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Group Policy\\State\\Machine\\Scripts\\Shutdown\\0\\0"); regkey2.SetValue("Script", Application.ExecutablePath); regkey2.Close(); Microsoft.Win32.RegistryKey regkey3 = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\Policies\\Microsoft\\Windows\\System\\Scripts\\Shutdown\\0"); regkey3.SetValue("GPO-ID", "LocalGPO"); regkey3.SetValue("SOM-ID", "Local"); regkey3.SetValue("FileSysPath", "C:\\WINDOWS\\System32\\GroupPolicy\\Machine"); regkey3.SetValue("DisplayName","Local Group Policy"); regkey3.SetValue("GPOName", "Local Group Policy"); regkey3 = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Group Policy\\State\\Machine\\Scripts\\Shutdown\\0"); regkey3.SetValue("GPO-ID", "LocalGPO"); regkey3.SetValue("SOM-ID", "Local"); regkey3.SetValue("FileSysPath", "C:\\WINDOWS\\System32\\GroupPolicy\\Machine"); regkey3.SetValue("DisplayName", "Local Group Policy"); regkey3.SetValue("GPOName", "Local Group Policy"); regkey3.Close(); ясно что коряво, но для начало хотел просто запустить. Но нет, не работает почемуто. Может я где то ошибся. Исправте или подскажите хорошое решение. П.С: Там еще добавление QWORDа есть, но я не знаю как его в регистр записывать. В SetupWizarde нет вообще возмоности добавить именно его, а программно не знаю как его добваить. В нете просмотрел, но мне везде выдовалось ДВОРД… Я болею и мой разум помутнен, так что прошу не шверять в меня какашками.
|
|
|
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-12 07:00:52.526666
|
|
|
Ltonid
Сообщений: 4970
Оценки: 740
Присоединился: 2008-12-29 13:21:56.166666
|
string commandline = "\"" + Application.ExecutablePath + "\" %1 Start"; Слеши обратные надо экранировать? а то везде "\\" А после выполнения всего этого в реестре все также выглядит? И где там куворд, чет я не помню что реестр поддерживает этот тип.
|
|
|
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-12 07:17:22.790000
|
|
|
orientalkenso
Сообщений: 5
Оценки: 0
Присоединился: 2010-11-12 05:05:44.683333
|
вот как пишет в sсriрt: quote:
C:\Users\G009C1233\Desktop\interface\WindowsFormsApplication2\WindowsFormsApplication2\bin\Debug\fessoft.EXE Вроде все нормально. Мне интерестно как можно нормально сделать. Руками через редактор груп. пол "gpedit.msc" нормально идет. Но вот когда сам региш, то нет. Есть ли способ как-либо через командную строку заставить редактор добавить в сценарии мой прогу. Либо другой способ что бы прога перед выключением срабатывала. Обычно нужно несколько минут програмке для завершения. Там зашифровка больших файлов происходит. Спасибо за то что уделили внимание
|
|
|
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-12 09:21:13.366666
|
|
|
orientalkenso
Сообщений: 5
Оценки: 0
Присоединился: 2010-11-12 05:05:44.683333
|
Короче говоря если никто ничего умного не может подсказать, покажите как управлять редактором локальной групповой политики "gpedit.msc". Нужно : Конфиги Виндоус — Сценарии — Завершение работы — добавить адрес и параметры. Как это сделать на С ШАРПЕ??? Там наверное можно через ГПО обьект как то впихать?! Покажите реальный рабочий код! Просто увидеть повторить и идти лечится. Уже 3дня ищу. Заранее благодарен
|
|
|
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-12 15:26:01.186666
|
|
|
Ltonid
Сообщений: 4970
Оценки: 740
Присоединился: 2008-12-29 13:21:56.166666
|
Давай ты попробуй так. Выставить все что нужно в Gpedit. Сохранить нужные ветки в reg файлы, а затем через командную строку и команду REG IMPORT имя_файла.reg вставить нужное в реестр. Т.е. или рег файл с собой таскать или формировать самому, но это уже другая часть проблемы.
|
|
|
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-16 09:12:08.670000
|
|
|
orientalkenso
Сообщений: 5
Оценки: 0
Присоединился: 2010-11-12 05:05:44.683333
|
Спасибо большое. Думал есть легкое решение, но нет, все пришлось ручками делать. А жаль! Код в разы больше стал. Да, отследил в основном то что нужно, вроде работает, но все же не все изменения можно заметить. Уперся в проблемку, програмка не работала при выключениях, и не мог понят в чем проблема. Оказывается что прога запускается как бы из пути политики("C:\winda\sys\policay…" точно не помню), а у меня в проге есть пару мест где путь не полный(ну по идее как бы те файлы должны были читаться и должны быть в той же папке где и прога, и по идее их не перетаскивают. Открывал чисто path = "list.xml"). Заметил только когда начал вести логи на каждый шаг. Прога запустилась но не работала по причине изменения пути и не могла просто открыть файл. Все еще болею, и разум помутнен.
|
|
|
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-16 09:22:57.920000
|
|
|
orientalkenso
Сообщений: 5
Оценки: 0
Присоединился: 2010-11-12 05:05:44.683333
|
quote:
И где там куворд, чет я не помню что реестр поддерживает этот тип. Когда добавляеш сценарии через gpedit.msc, то он в quote:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts\Shutdown\0\0] добавляет quote:
"ExecTime"=hex(b):00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 и если смотереть через "regedit" то пишут ExecTime ТИП= REG_QWORD . Можно в регедите кликнуть создать и там будет ДВорд 32бит и КуВорд 64бит. P.S:сижу на ВинСвен, как на пред. не помню.
|
|
|
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-16 09:48:25.120000
|
|
|
Ltonid
Сообщений: 4970
Оценки: 740
Присоединился: 2008-12-29 13:21:56.166666
|
Теперь ясно, это для 64 битных, как то сразу не сообразил. А у тебя самого получается 64 битка? Если да то это объясняет все косяки и проблемы описанные выше.
|
|
|
|
|