Существует ли функция C ++ для выключения компьютера?
-
21-08-2019 - |
Вопрос
Существует ли функция C ++ для выключения компьютера?И поскольку я сомневаюсь, что таковая существует (по крайней мере, в стандартной библиотеке), какую функцию Windows я могу вызвать из C ++?
В принципе, каков код для выключения компьютера с Windows xp на c ++?
Решение
В Windows вы можете использовать функцию ExitWindows, описанную здесь:
http://msdn.microsoft.com/en-us/library/aa376868 (ПРОТИВ 85).aspx
и вот ссылка на пример кода, который делает это:
http://msdn.microsoft.com/en-us/library/aa376871 (ПРОТИВ 85).aspx
Другие советы
Используйте следующее, предполагая, что у вас есть соответствующие привилегии):
ExitWindowsEx (EWX_POWEROFF | EWX_FORCEIFHUNG,
SHTDN_REASON_MINOR_OTHER);
Это приведет к отключению питания, давая приложениям возможность завершить работу (если они будут работать слишком долго, они все равно будут завершены).
Это часть Win32 API, а не стандартного C ++, но это потому, что C ++ не предоставляет способа сделать это напрямую.
Вы можете завершить работу, используя функцию system().
для Windows
system("shutdown -s");
для Linux
system("poweroff");
или
system("init 0");
Вы можете сделать это в Windows, вызвав ExitWindowsEx
функция.
да!для 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");