Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Ну, на самом деле не по теме немного. Чтоб было по теме, как это сделать из VB минимум 2 способа я знаю. Cамый простой Код: plaintext Ну и посложнее без диалогов: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Теперь о проблеме. Инсталлятор что использую Smart Install Maker (других не предлагать) не имеет опции перезагрузки после Uninstall. Но я считаю, что надо (есть основания). Но может запустить "чего-нибудь" после деинсталляции. Т.е. свой exe-шник я применить не могу по определению, ибо они уже удалены на требуемый момент, а "гадить" в %system% думаю нечестно. shutdown.exe мне не нравится, и он не предлагает выбора. devcon.exe тоже не годится, тем более это не штатное приложение. В идеале нужна штатная команда, которая вызывает что-то типа SetupPromptReboot. Т.е. перегрузить настоятельно рекомендуется, но можешь отказаться. Есть идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 03:30 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 0 (0x0) Log Off 4 (0x4) Forced Log Off (0 + 4) 1 (0x1) Shutdown 5 (0x5) Forced Shutdown (1 + 4) 2 (0x2) Reboot 6 (0x6) Forced Reboot (2 + 4) 8 (0x8) Power Off 12 (0xC) Forced Power Off (8 + 4) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 11:34 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Antonariy, Вы меня не поняли. Мне не нужен код VB, и скрипты VBS мне тоже не нужны. Необходимый и достаточный (рабочий) код VB у меня есть: Код: plaintext 1. 2. 3. 4. 5. Код: plaintext Мне нужно это сделать без VB. На момент полной деинсталляции у меня уже ничего нет. Есть только системная командная строка ! Я уже покопался, м.б. типа Код: plaintext 1. 2. Надо понять как передать в rundll32.exe первый параметр ByVal 0 (если возможно), тогда должно сработать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 12:17 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Дмитрий77Есть только системная командная строка!Ну и кто мешает запустить из нее wscript.exe? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 12:36 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Скажем так, всего один нулевой параметр нужен, но ByVal. Потому как в VB будет работать код: Код: plaintext 1. 2. 3. 4. 5. Гы, и даже вот так: Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 12:37 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
AntonariyНу и кто мешает запустить из нее wscript.exe? И что он будет делать? Без файла сценария в качестве параметра? Я могу и exe-шник с приведенным мной кодом подкинуть куда нибудь в %temp% или в %system%. Ну да, могу reboot.vbs записать туда же (и даже программно). И этот "мусор" останется там навсегда, не так ли? Все вирусы именно так и делают кажется,как то мне это не нравится... Мне всего-то надо Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 12:51 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Дмитрий77И этот "мусор" останется там навсегда, не так ли?Не так. *.vbs может сам себя без проблем стереть. Путь к нему можно предать аргументом wscript или добавить в файл при записи. Можно использовать консольный аналог wscript — cscript.exe. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 13:03 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Antonariy, а exe себя сам себя стереть не может? гы..ну я имею право больше чем на одну команду "после деинсталляции" М.б. 1) Shell MyReboot.exe 2) Shell del MyReboot.exe ? главное чтоб reboot не наступил раньше чем del... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 13:12 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Второй shell может выполниться быстрее, чем отработает MyReboot. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 13:21 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Antonariy, Код: plaintext 1. 2. 3. 4. 5. 6. Первому Shell ставится опция "ждать окончания", поэтому второй раньше никак не сработает. Вопрос сработает ли он когда выбран Reboot, но видимо да. Надо пробовать. Беспокоит уже другое. Команды выполняются "после деинсталляции", но таки до финального окна деинсталлятора с кнопкой "Finish". Не намусорит ли сам деинсталлятор, если он "недоработал" до конца? Т.е. он тоже должен "успеть" после второго Shell... Вообще странно, что в деинсталляторе нет опции перезагрузка. Я там удаляю драйвера и меняю режим OS TESTSIGNING->NORMAL (если был и если пользователь подтвердил это на начальном этапе деинсталляции), поэтому перезагрузка с применением именно SetupPromptReboot в данном случае более чем оправдана. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 13:56 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
> Автор: Дмитрий77 Ы? там на странице - Перегрузить Пк - RUNDLL32 SHELL32, SHExitWindowsEx 2 Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 13:59 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Игорь Горбонос Перегрузить Пк - RUNDLL32 SHELL32, SHExitWindowsEx 2 Игорь, а вы ето пробовали хотя б на XP. Ошибка в Shell32 Отсутствует:SHExitWindowsEx Тогда уж правильнее Shutdown.exe /? ... Вот если б вы мне на мой вопрос такую ссылку-соображения дали... Хочу Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 14:12 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Дмитрий77Команды выполняются "после деинсталляции", но таки до финального окна деинсталлятора с кнопкой "Finish". И до удаления файлов программы, как выяснилось. Непонятно что он деинсталляцией считает. Т.е. воткнуть можно в любой exe, только перегрузка в середине деинсталляции точно не нужна. Проблема...А другой инсталлер не хочу пока...тогда будет много проблем. Плохо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 14:42 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
> Автор: Дмитрий77 > Игорь, а вы ето пробовали хотя б на XP. Нет не пробовал, у меня нету XP. > Тогда уж правильнее Shutdown.exe /? ... А почему не используеш??? > Вот если б вы мне на мой вопрос такую ссылку-соображения дали... > Хочу > > rundll32 setupapi.dll,SetupPromptReboot <ByVal>0 а для чего ByVal указывать, если параметр по другому не передастся? И почему не передаеш ещё два параметра? Хотя у меня все равно не работает :( Судя по всему из соображений безопасности закрыли другие способы перегрузки компьютера Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 16:03 |
|
||
|
Командная строка перезагрузки компьютера (с предупреждением).
|
|||
|---|---|---|---|
|
#18+
Игорь ГорбоносНет не пробовал, у меня нету XP. Судя по всему из соображений безопасности закрыли другие способы перегрузки компьютера А что, на Висте работает? Скорее всего это из WIN98. Игорь Горбонос> Тогда уж правильнее Shutdown.exe /? ... А почему не используеш??? Потому что он не выводит предупреждения. А если выводить окно таймаута, то это вообще "порно", вирусы оч. любят использовать. В VB я пользую те два фрагмента кода, что привел в самом начале. Согласитесь, из VB этого достаточно. Игорь Горбонос> Вот если б вы мне на мой вопрос такую ссылку-соображения дали... > Хочу > > rundll32 setupapi.dll,SetupPromptReboot <ByVal>0 а для чего ByVal указывать, если параметр по другому не передастся? И почему не передаеш ещё два параметра? Хотя у меня все равно не работает :( Один параметр,да можно и три. Я же выше привел соображения почему. Если выполнять из VB, то 2-й и 3-й можно задекларировать как Optional. Код: plaintext Код: plaintext Можно и первый параметр опустить, но тогда его надо сразу декларировать как Optional ByVal. По умолчанию там очевидно ByRef, и именно ByRef срабатывает через Rundll32, и ничего не происходит. Т.е. если можно как-то запихнуть "ByVal", то долно работать. Вопрос как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2010, 19:43 |
|
||
|
|

start [/forum/topic.php?fid=60&fpage=120&tid=2159464]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
82ms |
get tp. blocked users: |
2ms |
| others: | 16ms |
| total: | 183ms |

| 0 / 0 |
