如何做到如下效果?
platform:win2k/winxpcontrol+alt+del按住control并点击关机按钮并确认!
分数多多等你来拿,不够再加

解决方案 »

  1.   

    首先要能用钩子钩住control+alt+del
    然后调用专门关机的API,不过我忘了
      

  2.   

    XP下面control+alt+del出来的是任务管理器!和2000不同。另外,这是个什么效果?用ExitWindowsEx不行吗?经常遇到用ExitWindowsEx在Windows2000下无法关机的情况,其实这是由于权限不够造成的,提高权限就可解决问题。HANDLE hToken;
    TOKEN_PRIVILEGES tkp,tkpNew;
    LUID int64LpUid;OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken)
    LookupPrivilegeValue(NULL,"SeShutdownPrivilege",&int64LpUid);
    tkp.PrivilegeCount=1;
    tkp.Privileges[0].Liud=int64LpUid;
    tkp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
    AdjustTokenPrivileges(hToken,FALSE,&tkp,sizeof(tkp),&tkpNew,&dwSize);然后应该可以用ExitWindowsEx关机了
      

  3.   

    直接调用这个函数关,还免了一些程序问你要不要保存
    ShutDownWindows(EWX_POWEROFF|EWX_FORCE);
    //EWX_LOGOFF,EWX_POWEROFF,EWX_REBOOT,EWX_SHUTDOWN
    //EWX_FORCE,EWX_FORCEIFHUNG
    BOOL ShutDownWindows(UINT t)
    {
      OSVERSIONINFO osv;  //定义一个操作系统信息的结构体
    osv.dwOSVersionInfoSize=sizeof OSVERSIONINFO;
    GetVersionEx(&osv);   //查询当前操作系统
      if(osv.dwPlatformId==VER_PLATFORM_WIN32_NT)  //判断是否是2000/NT
    {
      //下面为向操作系统获取权限操作
    HANDLE hProcess,hToken;
    TOKEN_PRIVILEGES Privileges;
    LUID luid;
    hProcess=GetCurrentProcess();
    //下面为打开当前进程对话
    OpenProcessToken(hProcess,TOKEN_ADJUST_PRIVILEGES,&hToken);
    Privileges.PrivilegeCount=1;
    LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&luid);
    Privileges.Privileges[0].Luid=luid;
    Privileges.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
    AdjustTokenPrivileges(hToken,FALSE,&Privileges,NULL,NULL,NULL);
    ExitWindowsEx(t,0);
    }
    else
    {
    ExitWindowsEx(t,0);//调用ExitWindowsEx关闭机器。 
    PostQuitMessage(0);
    }
    return true;
    }
      

  4.   

    没人愿意这样试试么?
    试试看在说!
    按ctrl+alt+del然后
    按住ctrl并点击对话框上的关机按钮并确认!
    这是不同的关机方式,等待解答中!!!。
      

  5.   

    问题是我的是XP,按ctrl+alt+del出不来你说的那个对话框。
      

  6.   

    xp可以呀
    ctrl+alt+del 不能弹出的windows安全对话框么?不可能呀!
      

  7.   

    除非删除dllcashe里边儿的taskmgr.exe然后再删除system32下的taskmgr.exe
      

  8.   

    我的意思是如何,使机器立刻断电(programming!)