4

別のアカウントでプロセスを開始しようとしています (StartInfo.UserName/Password を設定)。

これはインタラクティブに実行すると機能しますが、タスク スケジューラ経由で開始されたプロセスから実行しようとすると、エラー -1073741502 (C0000142; "DLL Initialization Failed") で失敗します。

WIN32 API に切り替えて、STARTUPINFO.lpDesktop="" で新しい WindowStation を作成しようとしましたが、同じエラーが発生します。

更新: 関連する質問を見つけましたが、残念ながら回答もありません:別のユーザーとして .NET サービスから .NET アプリを起動するときのアクセス許可の問題?

4

1 に答える 1

2

ここから CreateProcessAsUser を使用し、ここから LoadUserProfile を追加して、動作させることができまし

LoadUserProfile がないと、多くのツールが動作せず、奇妙なエラーが発生します。これは、ホーム ディレクトリが必要なためです (svn.exe や mstest.exe など)。

于 2012-05-14T20:26:56.877 に答える