Автор
|
Тема: Перезагрузка/выключение
|
7in |
опубликован 30-10-2001 22:57 MSK
Почему это не работает?...Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long Private Sub Main() ExitWindowsEx EWX_POWEROFF, 0 End Sub Точнее, работает не так как надо: какой бы параметр не задавался на месте EWX_POWEROFF, всегда происходит "завершение сеанса" и появляется окно с вводом имени юзера и пароля (для входа в систему). Запускалось это под Windows 98. Visual Basic, правда старый - четвёртый, но всё равно ж работать должно!!!
|
AlexR
|
опубликован 31-10-2001 18:32 MSK
Нужно писать REBOOTH - перезагрузка, SHUTDOWN - выключение. |
AlexR
|
опубликован 31-10-2001 18:32 MSK
Нужно писать REBOOTH - перезагрузка, SHUTDOWN - выключение. |
AlexR
|
опубликован 31-10-2001 18:32 MSK
Нужно писать REBOOTH - перезагрузка, SHUTDOWN - выключение. |
7in
|
опубликован 31-10-2001 22:42 MSK
Нет, Вася..., т.е... ну не важно; не работает! Ты откуда вообще это взял??? |
AlexR
|
опубликован 02-11-2001 18:07 MSK
Вот тебе код: Размещаем две кнопки.Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long Const EWX_SHUTDOWN = 1 Const EWX_REBOOT = 2 Function REBOOT() Dim r As Long r = ExitWindowsEx(EWX_REBOOT, 0) End FunctionFunction SHUTDOWN() Dim r As Long r = ExitWindowsEx(EWX_SHUTDOWN, 0) End Function Private Sub Command1_Click() REBOOT End Sub Private Sub Command2_Click() SHUTDOWN End Sub
|
Lamer
|
опубликован 02-11-2001 23:47 MSK
Вообще EWX_POWEROFF предназначена для выключения питания и работает не на всех компах (только на ) и, поэтому ничего удивительного! Но если не работает и REBOOT с SHUTDOWN то твой VB 4.0 не совместим с Win32. Это просто исправить, нажми на Пуск, выбери Выполнить, набери "deltree /y [путь к каталогу с VB]". Вот и все дела! |
Lamer
|
опубликован 02-11-2001 23:48 MSK
Вообще EWX_POWEROFF предназначена для выключения питания и работает не на всех компах (только на ATX) и, поэтому ничего удивительного! Но если не работает и REBOOT с SHUTDOWN то твой VB 4.0 не совместим с Win32. Это просто исправить, нажми на Пуск, выбери Выполнить, набери "deltree /y [путь к каталогу с VB]". Вот и все дела! |
Lamer
|
опубликован 02-11-2001 23:52 MSK
Есть ещё один вариант, ты забыл оъявить константу (Const EWX_SHUTDOWN = 1) и не знаешь оператора Option Explicit! |
Vasya2000
|
опубликован 03-11-2001 14:04 MSK
Public Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long Public Const EWX_FORCE = 4Public Const EWX_LOGOFF = 0 Public Const EWX_REBOOT = 2 Public Const EWX_SHUTDOWN = 1 Использование: ExitWindowsEx EWX_FORCE + EWX_REBOOT, 0
|
7in
|
опубликован 03-11-2001 21:44 MSK
Спасибо, народ, всё работает! Это я прогнал... :) |