返回首页

您好,

如何使用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;
}

回答