5

ネットで大規模な検索を行いましたが、直面している問題に対する具体的な解決策が見つからないようです。最も近いのはこの記事でした...しかし、まだ解決策はありません:(スケジュールされたタスクの実行.exeの問題

基本的に、環境は C# コンソール アプリケーションを実行する Windows Server 2008 R2 です。コンソール アプリケーションを手動で実行すると (NLog を使用して) テキスト ファイルが作成され、追加されますが、ドメイン管理者アカウントを使用して Windows スケジューラからコンソールを実行すると、アプリケーションは実行されます (イベント ビューアー ログから解読したように) が、テキスト ファイルはは作成/追加されません。また、スケジュールされたタスクを実行するアカウントを (ドメイン管理者からローカル管理者アカウントに) 変更しようとしましたが、問題は解決しません。

私にできることは他に考えられません。新鮮なアイデアは大歓迎です:)

4

1 に答える 1

8

コードを入れる方が簡単なので、答えとして id 投稿を考えました:

NLog へのフル パスを必ず指定してください。

string filepath = Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location),"NLog.txt");

スケジュールされたタスクとして実行する場合、アプリケーションの作業ディレクトリは異なる場合があります。たとえば、システムの下で実行すると、作業ディレクトリは C:\Windows\System32 になります。

これはあなたの問題かもしれません。

于 2013-09-24T10:05:26.463 に答える