2009-05-11 8 views
2

Y at-il une fonction C++ pour éteindre l'ordinateur? Et puisque je doute qu'il y en ait une (dans la bibliothèque standard, au moins), quelle est la fonction windows que je peux appeler depuis C++?Y at-il une fonction C++ pour éteindre l'ordinateur?

Fondamentalement, quel est le code pour désactiver un ordinateur Windows XP en C++?

Répondre

2

Vous pouvez le faire dans Windows , en appelant la fonction ExitWindowsEx.

4

Utilisez ce qui suit, en supposant que vous avez les privilèges):

ExitWindowsEx (EWX_POWEROFF | EWX_FORCEIFHUNG, 
    SHTDN_REASON_MINOR_OTHER); 

Cela entraînera la mise hors tension tout en donnant des applications une chance de fermer (si elles prennent trop de temps, ils seront résiliés de toute façon).

Cela fait partie de l'API Win32 plutôt que du C++ standard, mais c'est parce que C++ ne permet pas de le faire directement.

3

Vous pouvez arrêter en utilisant la fonction system().

pour Windows

system("shutdown -s"); 

pour Linux

system("poweroff"); 

ou

system("init 0"); 
0

oui! pour 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; 
} 

Pour Windows 7

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

Pour Linux

system("shutdown -P now"); 
+0

Pouvez-vous modifier votre réponse proposée pour développer ce que cela fait et comment il traite de l'OP? –

Questions connexes