Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

групповая политика (АвтоЗапуск при выключении)

Пользователи, просматривающие топик: 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 нет вообще возмоности добавить именно его, а программно не знаю как его добваить. В нете просмотрел, но мне везде выдовалось ДВОРД… Я болею и мой разум помутнен, так что прошу не шверять в меня какашками.
Post #: 1
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-12 07:00:52.526666   
Ltonid

Сообщений: 4970
Оценки: 740
Присоединился: 2008-12-29 13:21:56.166666
string commandline = "\"" + Application.ExecutablePath + "\" %1 Start"; Слеши обратные надо экранировать? а то везде "\\"

А после выполнения всего этого в реестре все также выглядит?

И где там куворд, чет я не помню что реестр поддерживает этот тип.
Post #: 2
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" нормально идет. Но вот когда сам региш, то нет. Есть ли способ как-либо через командную строку заставить редактор добавить в сценарии мой прогу. Либо другой способ что бы прога перед выключением срабатывала. Обычно нужно несколько минут програмке для завершения. Там зашифровка больших файлов происходит.
Спасибо за то что уделили внимание
Post #: 3
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-12 09:21:13.366666   
orientalkenso

Сообщений: 5
Оценки: 0
Присоединился: 2010-11-12 05:05:44.683333
Короче говоря если никто ничего умного не может подсказать, покажите как управлять редактором локальной групповой политики "gpedit.msc". Нужно : Конфиги Виндоус — Сценарии — Завершение работы — добавить адрес и параметры. Как это сделать на С ШАРПЕ??? Там наверное можно через ГПО обьект как то впихать?! Покажите реальный рабочий код! Просто увидеть повторить и идти лечится. Уже 3дня ищу. Заранее благодарен
Post #: 4
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-12 15:26:01.186666   
Ltonid

Сообщений: 4970
Оценки: 740
Присоединился: 2008-12-29 13:21:56.166666
Давай ты попробуй так.
Выставить все что нужно в Gpedit. Сохранить нужные ветки в reg файлы, а затем через командную строку и команду REG IMPORT имя_файла.reg вставить нужное в реестр.
Т.е. или рег файл с собой таскать или формировать самому, но это уже другая часть проблемы.
Post #: 5
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"). Заметил только когда начал вести логи на каждый шаг. Прога запустилась но не работала по причине изменения пути и не могла просто открыть файл.

Все еще болею, и разум помутнен.
Post #: 6
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:сижу на ВинСвен, как на пред. не помню.
Post #: 7
RE: групповая политика (АвтоЗапуск при выключении) - 2010-11-16 09:48:25.120000   
Ltonid

Сообщений: 4970
Оценки: 740
Присоединился: 2008-12-29 13:21:56.166666
Теперь ясно, это для 64 битных, как то сразу не сообразил.
А у тебя самого получается 64 битка? Если да то это объясняет все косяки и проблемы описанные выше.
Post #: 8
Страниц:  [1]
Все форумы >> [Первый вопрос] >> групповая политика (АвтоЗапуск при выключении)







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.