2012-05-14 2 views
0

MS LogParser를 C# 응용 프로그램에 구현하려고합니다. 이것은 logQuery.ExecuteBatch() 메소드에서 문제가 있지만 불가해하게 충돌합니다. try/catch 블록은 특별히 szQuery를 변형시키지 않는 한 그것을 잡아 내지 못합니다. 모든 것이 제대로 작동하고 있음을 시사합니다. 나는 출력을 얻지 못하고 있습니다.C#에서 LogParser 오류없이 오류가 발생합니다.

크래시가 발생하는 이유 또는 로깅을 찾을 수있는 위치에 대한 의견이 있으십니까?

using System; using System.Collections.Generic; using System.Linq; using System.Text; using FolderLoggingLib; using MSUtil;

namespace ConsoleApplication20 { class Program { static void Main(string[] args) { //refLog = new BinaryInputFormat(); LogQueryClass logQuery = new LogQueryClass(); ICOMCSVOutputContext output = new COMCSVOutputContextClass(); ILogParserInputContext parse = new BinaryInputFormat();

string szFileName = @"E:\Programming\FolderLogging\2012-05-13.fbl"; string szQuery = "SELECT Folder, User, Record, DB, TO_LOCALTIME(Timestamp) AS DateTime, Operation, Checked FROM " + szFileName + " ORDER BY DateTime DESC"; try { logQuery.ExecuteBatch(szQuery, parse, output); } catch { }; } }

}

+1

catch (예외 ex)를 사용하면 예외 상황을 확인하고 세부 정보를 게시 할 수 있습니다. –

+0

시도 - catch 블록에 도달하지 않으며 프로그램이 logQuery.ExecuteBatch() 메소드에서 종료됩니다. –

답변

1

사용 대신 executeBatch에의 실행 :

MSUtil.ILogRecordset RecordSet = logQuery.Execute(query, oInputFormat) 

당신은 INTO 추가하여 쿼리를 변경해야하는 샘플 코드에서 CSV로 내보내려면 output_file_name 및 ExecuteBatch 실행 :

string szQuery = "SELECT Folder, User, Record, DB, TO_LOCALTIME(Timestamp) AS DateTime, Operation, Checked **INTO c:\out\out.csv** FROM " + szFileName + " ORDER BY DateTime DESC"; 
관련 문제