Как из ВБ выключить комп?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Smith68
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 92
Зарегистрирован: 02.09.2005 (Пт) 19:08
Откуда: Тамбов, Моршанск

Как из ВБ выключить комп?

Сообщение Smith68 » 14.01.2006 (Сб) 14:45

Как из ВБ выключить комп?
Вчера на работе получил производственную травму: ударил палец о палец.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 14.01.2006 (Сб) 14:59

Думаю, так же, как и из C++ - ExitWindowsEx.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

Smith68
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 92
Зарегистрирован: 02.09.2005 (Пт) 19:08
Откуда: Тамбов, Моршанск

Сообщение Smith68 » 14.01.2006 (Сб) 15:12

Спасибо, попробуем
Вчера на работе получил производственную травму: ударил палец о палец.

Smith68
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 92
Зарегистрирован: 02.09.2005 (Пт) 19:08
Откуда: Тамбов, Моршанск

Сообщение Smith68 » 14.01.2006 (Сб) 15:33

Нда, нечего не получается! Пишет Sub или Function не определены. А других методов не знаешь?
Вчера на работе получил производственную травму: ударил палец о палец.

fenix_slayer
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 24.11.2005 (Чт) 14:53

Сообщение fenix_slayer » 14.01.2006 (Сб) 15:50

Код: Выделить всё

'в модуле   
Public Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, _
     ByVal dwReserved As Long) As Long
   Public Const EWX_LOGOFF = 0
   Public Const EWX_SHUTDOWN = 1
   Public Const EWX_REBOOT = 2
   Public Const EWX_FORCE = 4
'в коде
Dim s As Long

   'Так можно сделать Shut down
    s = ExitWindowsEx(EWX_SHUTDOWN, 0&)

   'Так можно сделать Log off   s = ExitWindowsEx(EWX_LOGOFF, 0&)

   'А так Reboot    s = ExitWindowsEx(EWX_REBOOT, 0&)

для ХР
Код: Выделить всё
Dim strComputer As String

strComputer = "."

Set objWMIService = GetObject("winmgmts:" & _
"{impersonationLevel=impersonate,(Shutdown)}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery( _
"Select * from Win32_OperatingSystem")

For Each ObjOperatingSystem In colOperatingSystems

ObjOperatingSystem.ShutDown 'Для выключения
Next

Код: Выделить всё
Dim strComputer As String
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate, _
(Shutdown)}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery( _
"Select * from Win32_OperatingSystem")
For Each ObjOperatingSystem In colOperatingSystems
   ObjOperatingSystem.Reboot ' Для перезагрузки
Next

HotKitten
Дятил
Дятил
Аватара пользователя
 
Сообщения: 400
Зарегистрирован: 24.01.2005 (Пн) 21:48
Откуда: из дома

Сообщение HotKitten » 15.01.2006 (Вс) 2:05

Smith68
а мне кажется, что король Робар (с твоей аватары) сначала набрал бы в поиске что-то типа слова Shutdown или какое нибудь более простое типа выключение иначе бы он стал королем годам к 300
http://bbs.vbstreets.ru/viewtopic.php?t ... t=shutdown
Изображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 13

    TopList  
cron