WMI Fun !! 〜 WMIに興味がある方・システム管理者必見!! 〜
 WMI Step|WMI Sample|WMI Reference|WMI Library|Personal|Link|About WMI Fun !!

WMI Fun !! > WMI Sample (VB) > イベントログの内容を保存する

Panasonic Let'snoteを長年愛用しています、その理由はMy Let'snoteで…
インクを買うよりもしかしたら安い?インクジェット複合機HP Photosmart 5510
白いご飯や日本酒にもとても合うにしんのきりこみがマイブームです

イベントログの内容を保存する: Win32_NTEventLogFile - WMI Sample (VB)

Topics

イベントログの内容を保存するサンプルプログラムです。Win32_NTLogEventFileクラスを使用します。

VBS(WSH)版のサンプルコードはこちらで公開しています。


Sample Code

Private Sub Command1_Click()

Dim EveSet As SWbemObjectSet
Dim Eve As SWbemObject
Dim Locator As SWbemLocator
Dim Service As SWbemServices
Dim Security As SWbemSecurity
Dim Ret As Long
Const wbemPrivilegeBackup = 16

Set Locator = New WbemScripting.SWbemLocator
Set Security = Locator.Security_
Security.Privileges.Add wbemPrivilegeBackup
Set Service = Locator.ConnectServer

Set EveSet = Service.ExecQuery _
("Select * from Win32_NTEventLogFile where LogFileName='Application'")

For Each Eve In EveSet

Ret = Eve.BackupEventLog("c:\applicationlog.evt")

Next

If Ret = 0 Then
MsgBox "アプリケーションログの保存に成功しました。"
Else
MsgBox "アプリケーションログの保存に失敗しました。"
End If

Set EveSet = Nothing
Set Eve = Nothing
Set Locator = Nothing
Set Service = Nothing
Set Security = Nothing

End Sub


Comment

実行するとイベントログの中のアプリケーションログをcドライブにapplicationlog.evtという名前で保存します。もちろんアプリケーションログ以外にもソース上のWQLにてクエリー条件を変更すれば保存可能です。LogFileNameプロパティをシステムログであれば「System」、セキュリティログであれば「Security」を指定します。
定期的にイベントログの内容を保存して過去のログ管理する際に使用すると便利なクラスです。

以前PCをシャットダウンサンプルで紹介したとおり今回の保存作業に於いても特権が必要になります。SWbemSecurityオブジェクトに対してwbemPrivilegeBackup定数でバックアップを行う特権があることを明示的に指定し、WMIへ接続を行ったうえでイベントログの保存を行っています。

なおWMIの使い方(VB6, VBS, VBA, VB.NET, VC#, PowerShellを対象)に関してはWMI Stepも参考にしてみてください。(WMI初心者・入門編としてもおすすめです。) 各種言語を使用したWMIを使用するたたき台としてソースコードテンプレートも公開しています。WMIプログラム/スクリプト作成時に役立てば…と思っています。


Recommended book

個人的にお勧めする本の紹介です。


ご意見・ご要望・ご感想をこちらのアンケートからお待ちしています
WMIに関して調べているけど探し物が見つからない…という方はSearch Resultから検索してみましょう!!

MCP(Microsoft Certified Professional)一応MCP(Microsoft Certified Professional)、MCA(Microsoft Certified Associate)所有してたりします…

- WMI Fun !! -
http://www.wmifun.net/
Microsoft社のテクノロジーであるWMI(Windows Management Instrumentation)の使い方を
Visual Basicを使ってのんびり公開しています
WMIはVB/VBAや.Net(VB,C#)以外でもWMICやWSH(VBS,JS)・PowerShellなどスクリプト言語からも使えますよ!
Windowsベースの社内ITシステムに関する資産管理、アセットマネジメントや監視業務の効率化、 インベントリ情報収集系システムツール開発にWMIはお勧めです

This website is created by Toh.
Copyright(C) 1997-2012 WMI Fun !!. All rights reserved.
WMI Fun !!へのリンクはご自由に…相互リンクに関するお問い合わせはアンケートページからお願いします。

∧ ページの先頭へ…