p_strIN | 固定文字列 " [▽IN ] " |
p_strOUT | 固定文字列 " [△OUT] " |
pS_EnvInit | ログ環境の初期化メソッド |
pS_Logging | ログ出力メソッド |
ByVal strPath_I As String |
ログ出力先パス
空文字の場合は、DLLのパス下の \Log フォルダに出力
出力先のフォルダが存在しなくても自動で作成する |
ByVal strName_I As String |
ログファイル名(拡張子は付加しないこと) ※自動的に ".Log" を付加 |
Optional ByVal blnDairy_I As Boolean = True |
True =日付(yyyymmdd)をログファイル名の先頭に付加 |
Optional ByVal lngSize_I As Long = 1000000 |
ログファイルのサイズ(Byte単位) |
Optional ByVal intTransition_I As Integer = 10 |
ログの履歴数 |
ByVal strLogText_I As String |
ロギング文字列
自動的に 日時を付加
空文字の場合は、日時のみを出力 ※前後の半角空白は強制的にTrimする |
Optional ByVal blnStacking_I As Boolean = False |
False=スタック分もログ出力してスタックを空にする True =ロギング文字列をメモリ上にスタックしておく
この機能は、昔の非力なPCでデバッグする際に、ログ出力のI/OにCPUパワーを食われてしまい正確なデバッグができなかったからです。
※通信などのデバッグなど スタック数の上限は 32000個 です。 現在のPCであれば、スタック機能はよほどでない限り必要ないでしょう。 |
Option Base 0 Option Explicit Option Compare Binary '********** 定数設定 Private Const mC_strMYNAME As String = "Form1" '--- ログ用インスタンス Private mDLL_Log As New ftsloggervb6.FtsLogger Private Sub Form_Initialize() '--- ログ環境の設定(パスと名称を指定、残りは規定値) Call mDLL_Log.pS_EnvInit( _ App.Path & "\Log", _ "LogDllTest" _ ) End Sub Private Sub Form_Load() '---+----+----+----+----+----+----+----+----+----+----+ Const C_strMYNAME As String = mC_strMYNAME & ":" & "Form_Load" Dim strLogMsg As String strLogMsg = C_strMYNAME & mDLL_Log.p_strIN Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ '---+----+----+----+----+----+----+----+----+----+----+ strLogMsg = String(5, "-") & "変数の初期化 処理中・・・" & vbCrLf _ & Space(20) & "その1" & vbCrLf _ & Space(20) & "その2" & vbCrLf _ & Space(20) & "その3" Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ '---+----+----+----+----+----+----+----+----+----+----+ strLogMsg = C_strMYNAME & mDLL_Log.p_strOUT Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ End Sub Private Sub Form_Terminate() Set mDLL_Log = Nothing End Sub Private Sub Form_Unload(Cancel As Integer) '---+----+----+----+----+----+----+----+----+----+----+ Const C_strMYNAME As String = mC_strMYNAME & ":" & "Form_Unload" Dim strLogMsg As String strLogMsg = C_strMYNAME & mDLL_Log.p_strIN Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ '---+----+----+----+----+----+----+----+----+----+----+ strLogMsg = String(5, "-") & "後処理中・・・" Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ '---+----+----+----+----+----+----+----+----+----+----+ strLogMsg = C_strMYNAME & mDLL_Log.p_strOUT Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ End Sub Private Sub Command1_Click() '---+----+----+----+----+----+----+----+----+----+----+ Const C_strMYNAME As String = mC_strMYNAME & ":" & "Command1_Click" Dim strLogMsg As String strLogMsg = C_strMYNAME & mDLL_Log.p_strIN Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ Static s_intCnt As Integer s_intCnt = s_intCnt + 1 '---+----+----+----+----+----+----+----+----+----+----+ strLogMsg = String(5, "-") & "ボタンの押下回数 = " & CStr(s_intCnt) Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ '---+----+----+----+----+----+----+----+----+----+----+ strLogMsg = C_strMYNAME & mDLL_Log.p_strOUT Call mDLL_Log.pS_Logging(strLogMsg) '---+----+----+----+----+----+----+----+----+----+----+ End Sub |
2010/11/01 16:46:28 Form1:Form_Load[▽IN ] 2010/11/01 16:46:28 -----変数の初期化 処理中・・・ その1 その2 その3 2010/11/01 16:46:28 Form1:Form_Load[△OUT] 2010/11/01 16:46:31 Form1:Command1_Click[▽IN ] 2010/11/01 16:46:31 -----ボタンの押下回数 = 1 2010/11/01 16:46:31 Form1:Command1_Click[△OUT] 2010/11/01 16:46:33 Form1:Command1_Click[▽IN ] 2010/11/01 16:46:33 -----ボタンの押下回数 = 2 2010/11/01 16:46:34 Form1:Command1_Click[△OUT] 2010/11/01 16:46:35 Form1:Command1_Click[▽IN ] 2010/11/01 16:46:35 -----ボタンの押下回数 = 3 2010/11/01 16:46:35 Form1:Command1_Click[△OUT] 2010/11/01 16:46:39 Form1:Command1_Click[▽IN ] 2010/11/01 16:46:39 -----ボタンの押下回数 = 4 2010/11/01 16:46:39 Form1:Command1_Click[△OUT] 2010/11/01 16:46:41 Form1:Command1_Click[▽IN ] 2010/11/01 16:46:41 -----ボタンの押下回数 = 5 2010/11/01 16:46:41 Form1:Command1_Click[△OUT] 2010/11/01 16:46:43 Form1:Form_Unload[▽IN ] 2010/11/01 16:46:43 -----後処理中・・・ 2010/11/01 16:46:43 Form1:Form_Unload[△OUT] 2010/11/01 16:46:43 ***** cls_FtsLogger:Class_Terminate ***** |