私はいくつかのサードパーティのアプリケーションを使用するWindowsサービスを持っています。このアプリケーションはログイン用に単一のウィンドウから構築され、ログイン後にプロセスがバックグラウンドで実行され、誰も気にしません。Windowsサービスから外部プロセスを実行しています
(Processクラスを使用して)このアプリケーションを開くコードがあり、必要なフィールドをすべて入力して接続ボタンを押します。このコードは、コマンドラインやフォームから勝利するときにはうまく動作しますが、Windowsサービスからこのコードを実行するとエラーは発生せず、exeも実行されません。
これはちょっと奇妙に聞こえると思いますが、Windowsサービスは設計上UIフリーでなければなりませんが、サービスを開始する前にこのアプリケーションを昼食する必要があります。この作業を2段階外部のすべてとサービスを開始する。
サービスプロパティの[ログオン]タブから[デスクトップと対話するサービスを許可する]チェックボックスをオンにしましたが、これは何もしませんでした。
どのようにこの作品を作るか、あるいはこの問題のための別のデザインでは、私は1ステップで操作を行うことができます。
ありがとうございました。
エラーが表示されますか。またはイベントログにエラーメッセージが記録されますか? –
これが役立つかどうかは不明ですが、SYSTEMまたはNETWORK SERVICEの代わりに実際のログオン/ユーザーアカウントでサービスを実行してみることができます – Jay
プロセスはどのようにボタンに当たったのですか?いくつかのコードを表示する必要があります。正確に結果があなたの期待に合わない箇所を確認するために、段階的にデバッグを試みましたか? –