关机API函数的问题 我用关机API函数ExitWindowsEx完成关机任务,就注销可以,关机和待机,重启都没反应.请高手指点 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 权限不够,你的账户只有注销的权限。或者你需要调整你进程的权限AdjustTokenPrivilege //WINDOWS NT/98下安全关机或注销的调用涵数void WinShutdown(UINT ShutdownFlag){ OSVERSIONINFO oi; oi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx(&oi); //如果是NT/2000下需先设置相关权限 if (oi.dwPlatformId == VER_PLATFORM_WIN32_NT) { HANDLE handle; TOKEN_PRIVILEGES tkp; OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &handle); LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid); tkp.PrivilegeCount = 1; // one privilege to set tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; AdjustTokenPrivileges(handle, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0); } //WIN98下关机或注销时可直接调用下面涵数既可 ::ExitWindowsEx(ShutdownFlag,0);}调用WinShutdown(EWX_SHUTDOWN);即可. 用这两个参数试试:EWX_POWEROFF | EWX_FORCE 拖动CSplitterWnd的Spliter会闪烁 如下错误怎么解决 char* 转化为CString 问题 通过web查询的问题 如何在一个自定义的类中获得CMainFram的DC PBM图片显示的问题?高手请进! 照着书写了一个聊天程序,可是老编译不过去,高手帮我看一下!在线等候... 怎么在VC程序中直接删除压缩包(.rar)中的文件?? 运行出错问题! 如何在某一目录下通过文件名查找出一个最新的文件 是可忍,孰不可忍?! 一道题
void WinShutdown(UINT ShutdownFlag)
{
OSVERSIONINFO oi;
oi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
GetVersionEx(&oi);
//如果是NT/2000下需先设置相关权限
if (oi.dwPlatformId == VER_PLATFORM_WIN32_NT)
{
HANDLE handle;
TOKEN_PRIVILEGES tkp; OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &handle);
LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid); tkp.PrivilegeCount = 1; // one privilege to set
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(handle, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0);
} //WIN98下关机或注销时可直接调用下面涵数既可
::ExitWindowsEx(ShutdownFlag,0);}
调用WinShutdown(EWX_SHUTDOWN);即可.