4

我正在尝试在不同的帐户下启动一个进程(设置 StartInfo.UserName/Password)。

这在交互式运行时有效,但在尝试从通过任务计划程序启动的进程运行时失败并出现错误 -1073741502(C0000142;“DLL 初始化失败”)。

我尝试切换到 WIN32 API 并使用 STARTUPINFO.lpDesktop="" 创建一个新的 WindowStation,但我得到了同样的错误。

更新:我刚刚发现了一个相关的问题,不幸的是它也缺少一个答案:从 .NET 服务作为不同用户启动 .NET 应用程序时的权限问题?

4

1 回答 1

2

我能够从这里使用 CreateProcessAsUser 并从这里添加 LoadUserProfile让它工作。

如果没有 LoadUserProfile,很多工具将无法工作并给您带来奇怪的错误,因为它们需要一个主目录(例如 svn.exe 和 mstest.exe)。

于 2012-05-14T20:26:56.877 回答