HWND hwnd1=::FindWindow("Progman","Program Manager");
::SendMessage(hwnd1,WM_COMMAND,0x01bf11,0);

解决方案 »

  1.   

    我试过了好象不行,也许是我没有理解,
    请给个详细的代码号码?
    我的email地址:[email protected]
      

  2.   

    系统ShutDown属于Windows系统的一种基本服务。功能上有“关闭系统”,“注销用户”,“锁定工作站”3中操作。SDK中提供了几个函数,来对此服务进行调用
    “关闭系统”,“注销用户”,“锁定工作站”这3中操作即使像你所说的入开始菜单....
    相应的你看看msdn.Windows NT/2000 及后续版本: 程序必须拥有SE_SHUTDOWN_NAME权限才能成功调用关闭函数.
    以下是一段代码:
    HANDLE hToken; // handle to process token 
    TOKEN_PRIVILEGES tkp; // pointer to token structure 
    BOOL fResult; // system shutdown flag 
    // Get the current process token handle so we can get shutdown 
    // privilege. 
    if (!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) 
    ErrorHandler("OpenProcessToken failed."); 
    // Get the LUID for shutdown privilege. 
    LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid); tkp.PrivilegeCount = 1; // one privilege to set tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; // Get shutdown privilege for this process. AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES) NULL, 0); // Cannot test the return value of AdjustTokenPrivileges. if (GetLastError() != ERROR_SUCCESS) ErrorHandler("AdjustTokenPrivileges enable failed."); // Display the shutdown dialog box and start the time-out countdown. fResult = InitiateSystemShutdown(NULL, // shut down local computer 
                               "Click on the main window and press \
                             the Escape key to cancel shutdown.", // message to user 
                            20, // time-out period 
                                  FALSE, // ask user to close apps 
                         TRUE); // reboot after shutdown 
    if (!fResult) 

    ErrorHandler("InitiateSystemShutdown failed."); 

    // Disable shutdown privilege. 
    tkp.Privileges[0].Attributes = 0; 
    AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES) NULL, 0); 
    if (GetLastError() != ERROR_SUCCESS) 
    {
    ErrorHandler("AdjustTokenPrivileges disable failed."); 
    }(以上是我参照一位网友的程序,好像是vcbear. )
      

  3.   

    我告诉你最专业,最简单的方法.
    用Gina中的导出函数,
    STDAPI_(DWORD) ShellShutdownDialog(HWND hwndParent, LPCTSTR szUnused, DWORD 
    dwExcludeItems).
    OK!!!
    别忘记加分.
      

  4.   

    我记得好象可以用SetWindowLong() 来做处理;具体的方法我忘了