3

我使用模拟机制来管理远程机器上的服务,我可以在 RDP 会话中使用我的用户名和密码连接到该机器并手动启动/停止服务。我还设法通过在模拟语句中使用 IntPtr.Zero 令牌的代码来启动/停止服务,但是在调用 logonuser 函数时,我遇到了失败(返回令牌 = 0 和错误 = 87)

这是一些代码:

if (LogonUser(_userName, domain, _Password, logonType (= 5), logonProvider (= 0), out token))
{
    MessageBox.Show("success!");
    return token;
}
else
{
    MessageBox.Show("Logon user throwing " + token + " " +    Marshal.GetLastWin32Error());
}

谢谢您的帮助!

4

1 回答 1

4

这与 Windows 本地安全策略有关,

应为用户分配“作为服务登录”用户权限。

于 2012-11-13T08:36:42.313 回答