Есть ли функция C ++ для выключения компьютера? - PullRequest
3 голосов
/ 11 мая 2009

Есть ли функция C ++ для выключения компьютера? И так как я сомневаюсь, что есть один (по крайней мере, в стандартной библиотеке), что за функция windows, которую я могу вызвать из C ++?

По сути, каков код для выключения компьютера с Windows XP в C ++?

Ответы [ 5 ]

20 голосов
/ 11 мая 2009

В Windows вы можете использовать функцию ExitWindows, описанную здесь:

http://msdn.microsoft.com/en-us/library/aa376868(VS.85).aspx

и вот ссылка на пример кода, который делает это:

http://msdn.microsoft.com/en-us/library/aa376871(VS.85).aspx

5 голосов
/ 11 мая 2009

Используйте следующее, если у вас есть права):

ExitWindowsEx (EWX_POWEROFF | EWX_FORCEIFHUNG,
    SHTDN_REASON_MINOR_OTHER);

Это приведет к отключению питания, в то же время давая приложениям возможность завершить работу (если они займут слишком много времени, они все равно будут отключены).

Это часть Win32 API, а не стандартная C ++, но это потому, что C ++ не предоставляет способа сделать это напрямую.

4 голосов
/ 11 мая 2009

Вы можете отключиться, используя функцию system ().

для Windows

system("shutdown -s");

для Linux

system("poweroff");

или

system("init 0");
2 голосов
/ 11 мая 2009

Вы можете сделать это в Windows, вызвав функцию ExitWindowsEx.

0 голосов
/ 16 мая 2016

да! для Windows XP:

#include <stdio.h>
#include <stdlib.h>

int main()
{
   char ch;

   printf("Do you want to shutdown your computer now (y/n)\n");
   scanf("%c", &ch);

   if (ch == 'y' || ch == 'Y')
       system("C:\\WINDOWS\\System32\\shutdown -s");
       return 0;
}

Для Windows 7

system("C:\\WINDOWS\\System32\\shutdown /s");

Для Linux

system("shutdown -P now");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...