您好,
如何使用MFC应用程序的计算机远程登录(远程桌面)?
任何人可以帮助我吗?
预先感谢:范围| Pgmer 7879944:拉克什・米尔:布尔MySystemShutdown(LPTSTR LPMSG)
{
拉手hToken;
TOKEN_PRIVILEGES TKP;
BOOL FRESULT; / /系统关机标志
/ /获取当前进程的令牌处理,所以我们可以关闭
/ /特权。
如果(OpenProcessToken(GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY,hToken))
返回FALSE;
/ /获得关机特权的LUID。
LookupPrivilegeValue(NULL,SE_REMOTE_SHUTDOWN_NAME,
tkp.Privileges [0] LUID)。
tkp.PrivilegeCount = 1; / /一个权限设置
tkp.Privileges [0]属性= SE_PRIVILEGE_ENABLED;
/ /获取关闭这一进程的特权。
AdjustTokenPrivileges(hToken,FALSE TKP,0,
(PTOKEN_PRIVILEGES)NULL,0);
/ /不能测试的AdjustTokenPrivileges返回值。
如果(GetLastError函数()!= ERROR_SUCCESS)
返回FALSE;
/ /显示关机对话框,并开始倒计时。
FRESULT = InitiateSystemShutdown(
("远程计算机的名称"),/ /关闭远程计算机
LPMSG,/ /用户的消息
10,/ /时间的时期,在几秒钟内
FALSE,/ /要求用户关闭应用程序
TRUE),/ /关机后重新启动
S = GetLastError函数()
CString的SS;
ss.Format("%d"时,S);
AfxMessageBox(SS);
如果(FRESULT)
返回FALSE;
/ /禁用关机特权。
tkp.Privileges [0]属性= 0;
AdjustTokenPrivileges(hToken,FALSE TKP,0,
(PTOKEN_PRIVILEGES)NULL,0);
返回TRUE;
}