问题
I want to write event log when this vbscript run. How to i can?
Thanks for any help.
回答1:
Like so:
Set shell = CreateObject("WScript.Shell")
shell.LogEvent 4, "Your Message Here"
The 4 is a severity level. You can learn more about the LogEvent
method on MSDN.
回答2:
This is old but I'm sure still valid.
http://msdn.microsoft.com/en-us/library/b4ce6by3
You also need permissions to be able to write to the event log so depending on the user running the script you may or my not have access.
回答3:
You might want to simply write to your own log file.
Check out my link with more information and details
http://www.yeshaib.com/2010/08/vbscript-in-the-logging/
'----------------------------------------------------------------------
'
' Please Enter Updates with date and name including line of Change
'----------------------------------------------------------------------
'----------------------------------------------------------------------
set objShell = CreateObject("Wscript.Shell")
set objFSO = CreateObject("Scripting.FileSystemObject")
'--- Main Begins ---------------------------------------
WriteToLog("Generic Log.vbs - Write This")
'--- Main Ends -----------------------------------------
'--- Write to log --------------------------------------
Sub WriteToLog(strLogMessage)
Const ForAppending = 8
Const vbsName = "Generic Log"
strLogFileName = "C:\GenericLog.log"
strLogEntryTime = NOW
'test whether file exists To either write/append to file
if objFSO.FileExists(strLogFileName) Then
Set objLogFileTransaction = objFSO.OpenTextFile(strLogFileName, ForAppending)
Else
Set objLogFileTransaction = objFSO.CreateTextFile(strLogFileName)
End if
objLogFileTransaction.WriteLine strLogEntryTime & chr(9) & chr(58) & chr(9) & vbsName & chr(9) & chr(58) & chr(9) & strLogMessage
objLogFileTransaction.Close
WScript.StdOut.WriteLine strLogMessage
WScript.StdOut.WriteLine ""
End Sub
来源:https://stackoverflow.com/questions/7534407/how-to-write-event-log-using-vbscript