2013-11-20 9 views
18

NLog.configファイルにtargetを設定して、ログファイルをユーザーのアプリケーションデータディレクトリに作成するにはどうすればよいですか?NLogファイルパスにアプリケーションデータディレクトリを使用

以下は、ファイルの望ましい場所です。

C:\ Users \ユーザーのユーザーID \のAppData \ローカル... \ logfile.txtという

私は成功せず、次の方法でfileNameを設定してみました。

  • target name="logfile" xsi:type="File" fileName="%APPDATA%/.../LogFile.txt"

  • target name="logfile" xsi:type="File" fileName="${APPDATA}/.../LogFile.txt"

  • target name="logfile" xsi:type="File" fileName="${%APPDATA%}/.../LogFile.txt"

答えて

35

あなたは、このようにターゲットを作成することによって、それを達成することができます

<target name="logfile" xsi:type="File" 
    fileName="${specialfolder:folder=ApplicationData}/LogFile.txt"/> 
0を

ドキュメントはhereです。

こちらがお役に立てば幸いです。

+0

ありがとうJacco.It worked! – Somu

+0

こんにちは@ user2263865、あなたは受け入れられた答えをマークできますか?同じ質問の訪問者を助け、評判を築くのに役立ちます。 ;-) –

-5

また、次を使用することができます。

<target name ="file_name" xsi:type="File" filename="${basedir}/file_name.txt"></target> 

ここ$ {BASEDIR}は(アプリケーションが実行されている)あなたの現在の作業ディレクトリを意味します。

fileName="${specialfolder:folder=ApplicationData}/Logs/LogFile.txt"/> 
+0

これは実際にOPの質問に答えるものではなく、アプリケーションがappdataフォルダから実行されている場合にのみ機能します。 –

2

Jaccoの答えにだけ加えて、あなたはパスにフォルダ名を追加することができます受け入れられた回答は、AppData \ Localのディレクトリにログファイルを作成せず、AppData \ Roamingディレクトリにログファイルを作成します。 オペレータの指示に従ってAppData \ Localにログファイルを作成するには、LocalApplicationDataをspecialfolderパスに使用する必要があります。

<target name="logfile" xsi:type="File" 
    fileName="${specialfolder:folder=LocalApplicationData}/ApplicationLogs/LogFile.txt"/> 
2

:あなたは、ログはこのように、あなたはAPPDATAに格納する可能性のある他のデータとは別に保管たい場合

関連する問題