Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//
// Error Handling & Tracing
//
#ifndef DEBUG #define DEBUG_ALERT(x) #define ALERT(x) alert(x) #define ERROR_STRING(x, e) x #else #define DEBUG_ALERT(x) alert("File: " + __FILE__ + "\nLine: " + __LINE__ + "\n" + x) #define ALERT(x) DEBUG_ALERT(x) #define ERROR_STRING(x, er) ("\nFile:\t"+__FILE__+"\nLine:\t"+__LINE__+"\n"+x+"\n"+("string"==typeof(er)?er:"\nDesc:\t" + er.description + "\nNo:\t" + er.number)) #endif
#ifdef DEBUG #define InitTrace() InitTraceEx( __FILE__ ) #else #define InitTrace() #endif
#ifndef DEBUG #include "debug_decl.inc" #else #include "constants.inc" <Script id="idScriptdebug" name="idScriptdebug" Language="JavaScript"> var g_szFuncName = null; var TraceFso = null; var TraceFileHandle = null; var TraceFile = null; var TracetFileName = null; var g_oShell = null; var g_bDebugSpew = 0;
function InitTraceEx( szFileName ) { try{ if( null == g_oShell ) { g_oShell = new ActiveXObject("WScript.Shell"); }
g_bDebugSpew = g_oShell.RegRead( c_szREGDebugSpew ); //alert("g_bDebugSpew: " + g_bDebugSpew);
if( g_bDebugSpew ) { TraceFso = new ActiveXObject("Scripting.FileSystemObject"); var tFolder = TraceFso.GetSpecialFolder(2); // Get Path to temp directory
TracetFileName = tFolder + "\\" + szFileName + "_RA.log"; TraceFileHandle = TraceFso.OpenTextFile( TracetFileName, 8, -2 ); DebugTrace( "Start of new helpsession:::" ); } } catch(x) { //alert("Error: " + x.description );
} }
function EndTrace() { DebugTrace( "End of new helpsession:::" ); try { if( g_bDebugSpew ) { TraceFileHandle.Close(); } } catch(e) { } }
function DebugTrace( szMsg ) { if( g_bDebugSpew ) { if( null == TraceFileHandle ) { InitTrace(); } var d = new Date(); try { TraceFileHandle.WriteLine( d.toLocaleString() + "::" + szMsg ); } catch(e) { // Dont do any thing.
} } }
function TraceFunctEnter( szFuncName ) { if( g_bDebugSpew ) { g_szFuncName = szFuncName; DebugTrace("Entering " + g_szFuncName); } }
function TraceFunctLeave() { if( g_bDebugSpew ) { DebugTrace("Leaving " + g_szFuncName); } } </Script> #endif
|