ComputerBooks.ru - Электронные книги, самоучители.

 
Электронные кники доступные для скачивания
На главную Добавить в избранное Форма отправки почты Если книг читать не будешь - скоро грамоту забудешь!

11. FAQ o Win API

Q> Как зашутдаунить удаленный компьютер?
A>
int main(int argc, char **argv)
{
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
//-------------------
 char *name="";    // address of name of computer to shut down
 char *msg="";     //address of message to display in dialog box
 DWORD time=0;     // time to display dialog box
 bool force=true;  // force applications with unsaved changes flag
 bool reboot=true; //reboot flag
//---------------------------------------------------------------------

    OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY,
&hToken);

    if(!LookupPrivilegeValue(name, SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid)){
    printf ("SE_SHUTDOWN_NAME Privilege облом \n");
    return 1 ;};

    tkp.PrivilegeCount =1;
    tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
    AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,(PTOKEN_PRIVILEGES)NULL, 0);

    if(!LookupPrivilegeValue(name,
    SE_REMOTE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid)){
    printf("SE_REMOTE_SHUTDOWN_NAME Privilege облом \n");
    return 2 ;};

    tkp.PrivilegeCount =1;
    tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
    AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,(PTOKEN_PRIVILEGES)NULL, 0);

    if (InitiateSystemShutdown(name,msg,time,force,reboot))
    printf("%s shutdown Ok\n",name);
    else printf("Can't shutdown %s \n",name);

 return 0;
}

2000(c)

Электронные Книги по компьютерным программам
На правах рекламы:
-->

Для добавления страницы электронной книги в избранное нажмине Ctrl+D

Книги | Статьи | Скачать

Правовая информация   

  © ComputerBooks.ru,
  При копировании материалов со страницы обязательно разместите ссылку на источник.