Windowsのイベントログファイル(.evt)についてです。
他OSで保存したイベントログファイルを自環境で読み込むツールを作る事は可能でしょうか?
例えば、WindowsVistaで保存したイベントログをWindowsXPに持ってきたとします。通常、XPのイベントビューアではそのVistaで保存したイベントログファイルは読めないと思いますが、何らかの方法(DLL使用等)でそのファイルを読む事は可能でしょうか?.Netにそのようなクラスか何かあればベストですが・・・

当方の開発環境はVisualStudio2005、開発言語はCまたはVBです。
またOSはWindowsXPを使用しています。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

実際に作っている人が居るので、可能だと思いますよ。


http://www.vector.co.jp/soft/winnt/util/se463062 …

参考URL:http://www.vector.co.jp/soft/winnt/util/se463062 …
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
紹介していただいたソフトを使用してみました。
どうやら開きたいログのOSから前もって情報を集めておいて、それを参照してログファイルを開くようです。
私のやりたいことと大体あっているのですが、最終的にcsvやテキストファイルにしたいと考えていますので、やはり自作しかないかなぁと思っています。
何か他にヒント等ありましたらお願いします。

お礼日時:2009/05/20 21:26
    • good
    • 0
この回答へのお礼

色々調べてみましたが、ちょっと分かりませんでした。
まぁもうちょっと粘ってみます。
何度もご回答ありがとうございました。

お礼日時:2009/05/30 21:29

リソースキットには、イベントログをテキスト化するツールが存在したはずです。


私なら、イベントログを抜き出す時点で、そのツールでテキスト化して抜き出します。
    • good
    • 0
この回答へのお礼

私がイベントログを取り出すならいいのですが、顧客が・・・という話をしても仕方ないので割愛します。ようは、
イベントログをもらう→解析したいがOSが違う→同じOSのマシンに持っていって読み取り、変換→自分のPCに持ってくる
という手順が面倒なのでツール化できないかと思った次第です。
ご回答ありがとうございました。

お礼日時:2009/05/24 02:34

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QDHCPに関するイベントログの意味が不明です

【ネットワークセキュリティ 】というぱっとしないカテゴリですが、ここが一番近いので、これで質問します。

特に支障があるわけではないのですが、イベントログにあがるDHCPのメッセージについて意味がわからず、気持ち悪い思いをしています。20年にわたり汎用機の適用業務の三流SEだったのにもかかわらず恥ずかしい限りです。

次のようなシステム環境です。
(1)Window XP SP2 のPC2台
(2)ネットワーク:FTTHでブロードバンドルータを使い、1台は有線、もう一台は無線で接続しています。
(3)ウィルスバスター2007で、プロファイルは「家庭内ネットワーク2」のデフォルト設定です
(3)ブロードバンドルータでの、DHCPのリース期間は48時間です。
(4)毎朝、2台のPCを立ち上げ使用し夜にはシャットダウンしています。
(5)ネットワーク接続時、1台は 192.168.11.2 もう一台は 192.168.11.3 が割り当てられ、ルータ自身は 192.168.11.1です。
どちらから立ち上げても、同じIPアドレスが割り当てられます。

そして、このような環境と運用のなかで、2台とも、次に示すイベントログがあがります。ネットワークカードのアドレスは伏字にしています。

■エラー ソースDHCP イベントID 1002
ネットワーク アドレスが 00XXXXXXXXXX のネットワーク カードに対する IP アドレス 192.168.11.2 のリースが、DHCP サーバー 192.168.11.1 から拒否されました。DHCP サーバーは DHCPNACK メッセージを送信しました。

■警告  ソースDHCP イベントID 1003
ネットワーク アドレスが 00XXXXXXXXXX のネットワーク カードに対して、ネットワーク (DHCP サーバー) から割り当てられたアドレスを書き換えることができませんでした。 次のエラーが発生しました:
セマフォがタイムアウトしました。 ネットワーク アドレス (DHCP) サーバーから引き続き、アドレスの取得を 試みます。

立ち上げる日によって、どちらかがログに書かれます。

また、警告の「セマフォがタイムアウトしました」は有線接続の方、無線接続は「この操作はユーザーによって取り消されました」と出ます。

ログのほうからmicrosoftのほうにアクセスしても、英語力に乏しい私は手に負えず、技術情報にキーワードでアクセスしても、現象とマッチしたものには出会えません。

ネットワークにお詳しい方、よろしくお願いします。

【ネットワークセキュリティ 】というぱっとしないカテゴリですが、ここが一番近いので、これで質問します。

特に支障があるわけではないのですが、イベントログにあがるDHCPのメッセージについて意味がわからず、気持ち悪い思いをしています。20年にわたり汎用機の適用業務の三流SEだったのにもかかわらず恥ずかしい限りです。

次のようなシステム環境です。
(1)Window XP SP2 のPC2台
(2)ネットワーク:FTTHでブロードバンドルータを使い、1台は有線、もう一台は無線で接続しています。
(3)ウィ...続きを読む

Aベストアンサー

DHCPの動作は通常,

立ち上げたPCは以前割り当てられたIPアドレスを割り当ててほしいとDHCPサーバに問い合わせます。そのIPアドレスが割り当てられないとDHCPサーバが判断すると1番目のメッセージがでます。

2番目はDHCPサーバが割り当てたIPアドレスにPCのネットワークカードが変更されなかった結果です。

DHCPサーバーは通常は同じMACアドレスには特別な事情(IPが足りずに他に使われているなど)が無い限り同じIPを割り当てる動作をします。

上記のエラーがでても最終的にはちゃんと接続できているようなので,最初のDHCPとPCとのネゴシエーションに失敗してこのログが残っているのだとおもいますので,気にしなくて良いと思います。

Q【アプリ開発】日本語を含むXMLファイル読み込み

iOSアプリ開発しています。(iOS5 SDK/Xcode4.3/Objective-C)

XMLファイル(日本語を含む)を読み込みそれを表示さたいのですが文字化けしてしまい困っています。

今、私が試しているのは「iPhone/iPadアプリ開発逆引き大全500の極意」という書籍のサンプルの中の「XMLファイルを読み込む」というサンプルです。サンプルだとXMLファイルで読み込む文字列はアルファベットなのでちゃんとうごいて文字化けせずに表示もされます。ですが、xmlファイルの読み込みたい文字列を日本語にすると「ÅÏ∞‰æ」のような感じで文字化けしてしまいます。

このサンプルのxmlファイル読み込みにはxmlParseFile関数、libxml2を使用していて、XMLファイル(persons.xml)を読み込んでUITextViewに表示するプログラムです。

サンプルのxmlファイル内にある文字列「masuda tomoaki」「yamada taro」「tanaka ziro」をそれぞれ「松田」「山田」「田中」と書き換えて保存してアプリを実行すると文字化けします。
他にどこか書き換えないといけないのでしょうか?
↓サンプルコードを付けています。

どうしたら日本語も読み込めるようになるか、どなたかアドバイスをお願いします。ネットで何日もかけて調べても解決できなかったのでどうか助けてください。
何卒よろしくお願いします。

↓「iPhone/iPadアプリ開発逆引き大全500の極意」のサンプルダウンロードページ(この中のBasic195)
http://www.shuwasystem.co.jp/support/7980html/3352.html

以下、サンプルのコード「ViewController.h」「ViewController.m」「persons.xml」です。

【ViewController.h】

#import <UIKit/UIKit.h>
#include <libxml/parser.h>
#include <libxml/xpath.h>

@interface ViewController : UIViewController
{
IBOutlet UITextView *textView;
}

- (IBAction)clickRead:(id)sender;

@end



【ViewController.m】

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}

- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}


- (IBAction)clickRead:(id)sender
{
NSString *path = [[NSBundle mainBundle] pathForResource:@"persons" ofType:@"xml"];
xmlDocPtr doc = xmlParseFile([path cStringUsingEncoding:NSUTF8StringEncoding]);
// XMLファイルを読み込む
xmlXPathContextPtr context = xmlXPathNewContext(doc);
xmlChar *xpath = (xmlChar*)[@"//person/name" cStringUsingEncoding:NSUTF8StringEncoding];
xmlXPathObjectPtr result = xmlXPathEval(xpath , context);

xmlNodeSetPtr nodeset = result->nodesetval;
NSMutableString *text = [NSMutableString string];
for ( int i=0; i<nodeset->nodeNr; i++ ) {
xmlChar *element = xmlNodeListGetString(doc, nodeset->nodeTab[i]->children, 1);
NSLog(@"element: %s", element);
[text appendFormat:@"name: %s\n", element];
}
xmlXPathFreeObject(result);
xmlXPathFreeContext(context);

textView.text = text;
}

@end


【persons.xml】

<?xml version="1.0" encoding="utf-8" ?>
<persons>
<person id="01">
<name>masuda tomoaki</name>
<age>43</age>
<address>tokyo</address>
</person>
<person id="02">
<name>yamada taro</name>
<age>30</age>
<address>oosaka</address>
</person>
<person id="03">
<name>tanaka ziro</name>
<age>20</age>
<address>hokkaido</address>
</person>
</persons>

iOSアプリ開発しています。(iOS5 SDK/Xcode4.3/Objective-C)

XMLファイル(日本語を含む)を読み込みそれを表示さたいのですが文字化けしてしまい困っています。

今、私が試しているのは「iPhone/iPadアプリ開発逆引き大全500の極意」という書籍のサンプルの中の「XMLファイルを読み込む」というサンプルです。サンプルだとXMLファイルで読み込む文字列はアルファベットなのでちゃんとうごいて文字化けせずに表示もされます。ですが、xmlファイルの読み込みたい文字列を日本語にすると「ÅÏ∞‰æ」のような感じで...続きを読む

Aベストアンサー

ViewController.mの、clickReadを以下のように書き換えてみてください。

- (IBAction)clickRead:(id)sender
{
NSString *path = [[NSBundle mainBundle] pathForResource:@"persons" ofType:@"xml"];
xmlDocPtr doc = xmlParseFile([path cStringUsingEncoding:NSUTF8StringEncoding]);
// XMLファイルを読み込む
xmlXPathContextPtr context = xmlXPathNewContext(doc);
xmlChar *xpath = (xmlChar*)[@"//person/name" cStringUsingEncoding:NSUTF8StringEncoding];
xmlXPathObjectPtr result = xmlXPathEval(xpath , context);

xmlNodeSetPtr nodeset = result->nodesetval;
NSMutableString *text = [NSMutableString string];
for ( int i=0; i<nodeset->nodeNr; i++ ) {
xmlChar *element = xmlNodeListGetString(doc, nodeset->nodeTab[i]->children, 1);
NSString* str = [NSString stringWithCString:element encoding:NSUTF8StringEncoding];
NSLog(@"str=%@",str); // << ここと
[text appendFormat:@"name: %@\n", str]; // << ここ
// NSLog(@"element: %s", element);
// [text appendFormat:@"name: %s\n", element];
}
xmlXPathFreeObject(result);
xmlXPathFreeContext(context);

textView.text = text;
}

Readボタンを押して、nameに漢字が設定されても、正しく表示されると思います。

ViewController.mの、clickReadを以下のように書き換えてみてください。

- (IBAction)clickRead:(id)sender
{
NSString *path = [[NSBundle mainBundle] pathForResource:@"persons" ofType:@"xml"];
xmlDocPtr doc = xmlParseFile([path cStringUsingEncoding:NSUTF8StringEncoding]);
// XMLファイルを読み込む
xmlXPathContextPtr context = xmlXPathNewContext(doc);
xmlChar *xpath = (xmlChar*)[@"//person/name" cStringUsingEncoding:NSUTF8StringEncoding];
xmlXPathObjectPtr ...続きを読む

Q写真集発売イベントでの特典の意味が解りません???

某書店で行われる写真集発売記念イベントについて。

2冊購入すると「ツーショットチェキ1枚」、3冊購入すると「ミニ撮影会」と書店のHPに記載されてました。

ツーショットチェキとは、タレントと客と二人並んで、係員に撮影してもらうんでしょうか? チェキって何ですか??

ミニ撮影会とは、ツーショット撮影ではなく、タレントさんだけをカメラ持参で撮影するのでしょうか? 

Aベストアンサー

「 チェキ 」は富士フイルムが発売しているインスタント
カメラのことで、その場ですぐに写真が見れるポラロイド
のようなものです。いわゆるポラロイドよりサイズが小さ
いので現場で扱いやすいことと、バンバン撮るのに適して
いるので、発売記念イベントの現場ではよく使われています。

 ですので、ツーショットチェキに関してはご想像の通りです。

 ミニ撮影会についてもご想像の通りです。たいていは
イベント終了後、参加者が別室に移動し、そこで10分
程度自由に撮影することができます。基本的にムービー
は禁止で、ポーズもあまり自由にお願いできなかったり
しますが、目線くらいはくれるのでファンには好評です。

参考URL:http://www.fujifilm.co.jp/instant/index.html

QWindowsXPの圧縮の保存先

 WindowsXPのエクスプローラで右クリックの表の中の「圧縮」の時、圧縮ファイルの保存先を勝手に「ディスクトップ」に指定されてしまう。
これを「解凍」の時のように選べるようには出来ませんか。

Aベストアンサー

右クリックメニューに標準でそういう項目はないので、何かのソフトをインストールした結果登録された項目ですね。

そのソフトを起動するとメニュー等で設定の項目があると思います。

QイベントID 3224 の意味がわかりません

会社で、データサーバ機として、使っている WindowsNT Server4.0 機なんですが、いつからか、システムのイベントログにきまったエラーが出ています。
 ソース:NETLOGON
 分類 :なし
 ID  :3224
 「次のエラーが発生したため、アカウント AAAAA$ のマシン アカウント パスワードの 変更に失敗しました:
 現在、ログオン要求を処理できるログオン サーバーは ありません。」

AAAAA はデータサーバのコンピュータ名です。
これについて、詳しい方、詳しいホームページ等ありましたら教えて下さい。

Aベストアンサー

MicrosoftのSuportServices の
http://support.microsoft.com/default.aspx?scid=%2Fisapi%2Fgomscom%2Easp%3Ftarget%3D%2Fjapan%2Fsupport%2Fkb%2Farticles%2Fjp186%2F5%2F45%2Easp&LN=JA

でどうでしょう。
ちなみに、MicrosoftのSuportServices で
「NETLOGON」で検索し、「3224」で絞込み検索しました。

参考URL:http://support.microsoft.com/default.aspx?scid=%2Fisapi%2Fgomscom%2Easp%3Ftarget%3D%2Fjapan%2Fsupport%2Fkb%2Farticles%2F

QWindowsのバッチファイルでcallコマンド時にログを残す方法について

お世話になっております。

Windowsのバッチファイルについての質問です。

Windowsのバッチファイル内で、さらにバッチファイルをcallコマンドに
よって、呼び出しているのですが、その呼び出したバッチファイルの
logを残したいのですが、実装方法が分かりません。
# UNIXのscriptコマンドのようなコマンドがあれば実装できると
# 考えたのですが、存在していないようです。

callコマンドは、リダイレクトorパイプが使えないらしいので、
以下のような記述だとlogを出力することができません。

call test.bat > test.log

ご存知の方がいらっしゃいましたら、ご教示下さい。

以上、よろしくお願いいたします。

Aベストアンサー

>callコマンドは、リダイレクトorパイプが使えないらしいので、

何を見たか判りませんが、ガセですね。
-----A.bat----
call B.bat > X.txt
--------------
-----B.bat----
echo abc
--------------
あたりで確認してみてください。

スクリプト全体を見ないと何が悪いのか判りませんが、どこかに間違いがあると思われます。

Qイベントevt?evt.target:event.srcElement;の意味合い

以下の理解で合っているのでしょうか?
よくイベントの取得で

エレメント.onclick = function(evt){
var e = evt?evt.target:event.srcElement;
}
でeにイベントオブジェクトの発生元要素をセットしているのを見かけますが、
これは、ブラウザーの違いの吸収なのでしょうか?

firefoxでは、イベントハンドラー関数にイベントオブジェクトが渡されるので、渡されたイベントオブジェクトよりevt.targetで発生元要素をセットし、一方IEでは、eventという名前のオブジェクトが存在している(?)ので、イベントハンドラー関数にイベントオブジェクトが渡されず、event.srcElementで発生元要素をセットする。
 ※Opera、Safariは何でも良い

IEの場合、後から、イベントが追加されたらeventオブジェクトはどうなるのでしょうか?ある要素の一つのイベントタイプには一つのイベントハンドラーしか定義できないのでしょうか?

Aベストアンサー

> ある要素の一つのイベントタイプには一つのイベントハンドラーしか定義できないのでしょうか?
attachEvent() を使えば、複数のイベントハンドラを定義できそうです。(未検証)
また、attachEvent() の第一引数からイベントオブジェクトを取得できる、とbabu_babooさんに教わりました。
http://okwave.jp/qa5081024.html?ans_count_asc=1

ただ、attachEvent は実行順が不定という欠点があるので、現実的には「出来ない」という結論になると思います…。

addEventListenerとattachEventでは実行される順番が違う at HouseTect, JavaScripter Blog
http://hisasann.com/housetect/2008/09/addeventlistenerattachevent.html
IEのイベント実行順序は不定? - inamenaiの日記
http://d.hatena.ne.jp/inamenai/20080915/p1

IEが addEventListener() に対応してくれればいいのですが…。

> ある要素の一つのイベントタイプには一つのイベントハンドラーしか定義できないのでしょうか?
attachEvent() を使えば、複数のイベントハンドラを定義できそうです。(未検証)
また、attachEvent() の第一引数からイベントオブジェクトを取得できる、とbabu_babooさんに教わりました。
http://okwave.jp/qa5081024.html?ans_count_asc=1

ただ、attachEvent は実行順が不定という欠点があるので、現実的には「出来ない」という結論になると思います…。

addEventListenerとattachEventでは実行される順番...続きを読む

QWindowsXPのPCのファイルの文字列を自動で変換したい

こんにちは。

PCにあるテキストファイルの内容を自動で変換したいのですが、
やり方がわからなくて困っています。

具体的に実現したい事は以下の通りです。

C:\test\abc1.txtがあったら、abc1.txtに書かれている文字列
tokyo を osaka
に変更したいのです。abc1.txtは、PCによって存在するかどうか
は分からないので、存在する時のみ修正する必要があります。
また、特別な開発ツールは使わずに出来る方法である必要があります。

調べるにもなにから調べるのか手がかりがなく困っています。

PCのOSはWindowsXPです。

よろしくお願いします。

Aベストアンサー

以下のコードを任意の場所に****.vbsという名前で保存(****は適当に)

Set FSO = CreateObject("Scripting.FileSystemObject")

If FSO.FileExists("C:\test\abc1.txt") Then
Set TXT = FSO.OpenTextFile("C:\sample.csv", 1)
Buffer = TXT.ReadAll
TXT.Close
Set TXT = FSO.GetFile("C:\test\abc1.txt").OpenAsTextStream(2, 0)
TXT.Write Replace(Buffer,"yokyo", "osaka")
TXT.Close
Set TXT = Nothing
End If

Set FSO = Nothing

作成したファイルを実行すれば(Explorerからダブルクリックもしくは「ファイル名を指定して実行」から)、ご希望のことが出来ると思います。
※試すときは予めC:\test\abc1.txtのコピーをとっておいてください
定期的に実行するならタスクに登録

以下のコードを任意の場所に****.vbsという名前で保存(****は適当に)

Set FSO = CreateObject("Scripting.FileSystemObject")

If FSO.FileExists("C:\test\abc1.txt") Then
Set TXT = FSO.OpenTextFile("C:\sample.csv", 1)
Buffer = TXT.ReadAll
TXT.Close
Set TXT = FSO.GetFile("C:\test\abc1.txt").OpenAsTextStream(2, 0)
TXT.Write Replace(Buffer,"yokyo", "osaka")
TXT.Close
Set TXT = Nothing
End If

Set FSO = Nothing

作成したファイルを実行すれば(Explorerからダブルクリック...続きを読む

QEnableEventsの意味は

VBAを勉強中の初心者です。

Excelでプロシージャの中に書かれている次の文は、どういう意味を持っているのですか。

Application.EnableEvents = False

'処理命令文

Application.EnableEvents = True

EnableEventsとは、何を可能にさせると言っているのでしょうか。
= Falseとは、何が違うと言っているのでしょうか。

割り込み禁止で、ここで処理が実行されている間は、他の余分なことは受け付けないと言っているのかと勝手な想像もしていますが、どうでしょうか。

教えて下さい。よろしくお願いします。

Aベストアンサー

こんにちは。

VBAを勉強中としたら、その辺りは、自然に分かってくるものだから、ちょっと早いかもしれませんね。イベント自体はお分かりになっていますね。後で、マニュアルやヘルプで確認してください。

他のアクションを起動にして、別の動作をするというものです。

Private Sub Worksheet_Change(ByVal Target As Range)

この場合は、Enter を押したときに発生します。

それ自体は、受身でよいのですが、そのマクロ自体が、別のセルを代入したりすると、もうひとつのイベントを発生させてしまい、プロシージャの中で、無限ループに近い形になっています。(ただし、完全な無限ループではないので、1万回程度で止まります。)そこで、その無限ループをとめなくてはならないので、そうした、

Application.EnableEvents = False
ということをします。

逆に、
Application.EnableEvents = True で戻してあげないと、今度は、そのイベント・ドリブン型プロシージャはうんともすんとも言わなくなってしまいます。

>割り込み禁止で、ここで処理が実行されている間は、他の余分なことは受け付けない

その範囲内だけ、イベントを発生させないということです。
厳密には、そういったものには、以下のようなものがあります。
Application.Interactive = False

.

こんにちは。

VBAを勉強中としたら、その辺りは、自然に分かってくるものだから、ちょっと早いかもしれませんね。イベント自体はお分かりになっていますね。後で、マニュアルやヘルプで確認してください。

他のアクションを起動にして、別の動作をするというものです。

Private Sub Worksheet_Change(ByVal Target As Range)

この場合は、Enter を押したときに発生します。

それ自体は、受身でよいのですが、そのマクロ自体が、別のセルを代入したりすると、もうひとつのイベントを発生させてしま...続きを読む

Q複数のプログラムのログを1つのログファイルに出力

初めて質問させていただきます。

Bourne Shell(Bシェル)のいくつかのプログラムで1つのログファイルを
使用したいと考えています。
ログファイルは、
echo ログ >> ログファイル
といった形で出力予定です。
ただ業務の仕様上、シェルプログラムが同時に動く可能性があるのですが
そうした場合、やはり片方のログが出力されないといったことになるのでしょうか?

よろしくお願いします。

Aベストアンサー

こういった問題はどうなるというよりも、「動作が保証されない」と思います。
試しに手元の環境で以下のプログラムを試してみました。
明らかに平行してないです。
やはり、RDBMSに流し込む方がベターでしょうね。

#!/usr/bin/perl
use strict;

for(1 .. 10){
print "$_\n";
sleep 2;
}


$ ./test.pl >> log.txt &
$ ./test.pl >> log.txt &
$ ./test.pl >> log.txt &

$ cat log.txt
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10


人気Q&Aランキング

おすすめ情報