エラーログをexeと同じフォルダに配置する
- 題名: エラーログをexeと同じフォルダに配置する
- 著者: たきぐち
- 日時: 2013/05/21 16:35:18
- ID: 31560
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: エラーログをexeと同じフォルダに配置する
- 著者: とくむぁ
- 日時: 2013/05/21 16:46:27
- ID: 31561
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: エラーログをexeと同じフォルダに配置する
- 著者: Azulean
- 日時: 2013/05/21 22:40:46
- ID: 31568
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: エラーログをexeと同じフォルダに配置する
- 著者: たきぐち
- 日時: 2013/05/22 1:01:28
- ID: 31570
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: エラーログをexeと同じフォルダに配置する
- 著者: たきぐち
- 日時: 2013/05/22 1:02:08
- ID: 31571
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
exeを配置した場所(C:\Program Files\hoge\hogehogesys) と同じ場所にエラー ログフォルダを配置したいとおもいます。
以下のように作ってみました。
Visual Stadioからのデバッグだとうまくログを出してくれるのですが、
実際にsetup.exeからインストールしたものを動かすとうまくいきません。
どうやら以下の
System.IO.Directory.CreateDirectory(logFolder)
でエラーになっているようなのですが、どのように修正を行えばよいのかわかり ません。お知恵をお貸しくださいよろしくお願いいたします。
Public Sub CommonError(ByVal errorMessage As Exception, ByVal strErrorGamen As String)
Try
Dim dtnow As Date = Now '発生日時
Dim UserName As String 'ユーザーID
※※ Dim logFolder As String = Application.ExecutablePath & "Log"
パスが影響
MsgBox(logFolder & "作成成功")
' ログフォルダ作成
System.IO.Directory.CreateDirectory(logFolder) ←ここでエラーになっている
' ログファイル名作成
Dim logFile As String = logFolder & "\ErrorLog" & dtnow.ToString("yyyyMMdd") & ".log"
UserName = UserIDp
' ログ出力文字列作成
Dim logStr As String
logStr = dtnow.ToString("yyyy/MM/dd HH:mm:ss") & vbTab & UserName & vbTab & strErrorGamen
If errorMessage Is Nothing = False Then
logStr = logStr & vbCrLf & errorMessage.ToString & vbCrLf
End If
MsgBox(logStr & "作成成功")
' Shift-JISでログ出力
Dim sw As IO.StreamWriter = Nothing
Try
sw = New IO.StreamWriter(logFile, True, System.Text.Encoding.GetEncoding("Shift-JIS"))
sw.WriteLine(logStr)
MsgBox("書き込み成功")
Catch ex2 As Exception
Finally
If sw Is Nothing = False Then sw.Close()
End Try
Catch ex As Exception
MessageBox.Show("プログラムエラーが発生しました", "エラー処 理内エラー", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub