Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Shutdown.exe

Ostatnio zmodyfikowano 2011-04-18 15:15
Autor Wiadomość
yoogi
» 2011-04-17 16:57:32
Jeśli ten przykład z góry zbytnio ci nie wystarcza to masz tu kod:
C/C++
#include <windows.h>

#pragma comment(lib, "user32.lib")
#pragma comment(lib, "advapi32.lib")

BOOL MySystemShutdown()
{
    HANDLE hToken;
    TOKEN_PRIVILEGES tkp;
   
    if( !OpenProcessToken( GetCurrentProcess(),
    TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, & hToken ) )
         return( FALSE );
   
    LookupPrivilegeValue( NULL, SE_SHUTDOWN_NAME,
    & tkp.Privileges[ 0 ].Luid );
   
    tkp.PrivilegeCount = 1; // one privilege to set   
    tkp.Privileges[ 0 ].Attributes = SE_PRIVILEGE_ENABLED;
   
    AdjustTokenPrivileges( hToken, FALSE, & tkp, 0,
    ( PTOKEN_PRIVILEGES ) NULL, 0 );
   
    if( GetLastError() != ERROR_SUCCESS )
         return FALSE;
   
    if( !ExitWindowsEx( EWX_SHUTDOWN | EWX_FORCE,
    SHTDN_REASON_MAJOR_OPERATINGSYSTEM |
    SHTDN_REASON_MINOR_UPGRADE |
    SHTDN_REASON_FLAG_PLANNED ) )
         return FALSE;
   
    return TRUE;
}

int main() {
   
    MySystemShutdown();
   
}
P-30968
McAffey
» 2011-04-17 16:57:57
@Mrowqa Nie chce mi się sprawdzać jak dokładnie należy zapisać to polecenie shutdown, wejdź w konsolę CMD i tam wywołuj tego shutdowna, i jak Ci zadziała to skopiuj to co wpisałeś i wstaw
system( "tutaj" );
.

edit: Albo zrób po prostu tak jak Ci pokazuje yoogi, ten sposób jest dużo lepszy ;)
P-30969
Mrowqa
Temat założony przez niniejszego użytkownika
» 2011-04-17 17:09:02
Dopiero co kompa włączyłem. Sposób yoogiego jest dobry ;)
system( "komenda z CMD" );
 tak to działa ?? :D

Pozdrawiam,
Mrowqa
P-30972
yoogi
» 2011-04-17 17:09:50
Tak.
P-30973
pekfos
» 2011-04-17 17:16:26
stosuj rozwiązania z WinAPI . system() to nie najlepsze rozwiązanie i radzę go unikać.
P-30976
Mrowqa
Temat założony przez niniejszego użytkownika
» 2011-04-17 17:22:11
Dzięki za radę ;)
Ja WinAPI nie umiem ( jeszcze ^^ ).

Pozdrawiam,
Mrowqa
P-30979
yoogi
» 2011-04-17 17:23:32
To co ci dałem to jest WinAPI...
WinAPI to nie tylko utworzenie okna, ale korzystanie z funkcji systemowych.
P-30980
Mrowqa
Temat założony przez niniejszego użytkownika
» 2011-04-17 17:27:06
Wiem, wiem ... Tylko z tego co się domyślam to tylko do Windows ;) ( Stąd nazwa. )
Rzuciłem okiem tu na kurs ... coś tam było o rejestrze i innych rzeczach ;)
WinAPI to chyba druga najważniejsza rzecz zaraz po podstawach i jego rozszerzeniu ( chodzi mi o standard ) :D

Pozdrawiam,
Mrowqa
P-30983
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona