• ベストアンサー

PC off時のログ記録

pcの電源を断した時の日時を取得したいのですが、 今、バッチファイルを作成しそこに、dataとtime、shutdownコマンドを記述しまして日時は取得できます。win2000では、shutdownが無いみたいで、電源を切れません。 ただ、バッチファイルをダブルクリックし忘れてしまいますので、記録できないことがよくあります。 tasksフォルダに電源offは登録することもできませんし、 なんとか自動化できないでしょうか? 管理ツールにイベントビューアというのがあるのですが、 ちょっと利用しづらいのです。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Raistlin
  • ベストアンサー率63% (65/102)
回答No.1

クリックし忘れ防止ということを考えると、やはりイベントログを活用すべきなのかと思います。 標準のイベントビューアでも、イベントID(6006でOK?)でフィルタすればそれなりにいけますが、この操作さえも面倒だということであれば、イベントログから情報を切り出して保存するスクリプトを運用してはいかがでしょう。 http://www.microsoft.com/japan/technet/scriptcenter/scripts/logs/eventlog/default.mspx のコードを切り貼りして作ったコードを最後に載せておきます。 なお蛇足かもしれませんが、電源断はリンク先の情報使えませんかね。 http://homepage2.nifty.com/winfaq/w2k/boot.html#1001 ++++参考コードここから++++ Const ForAppending = 2 Set objFSO = CreateObject("Scripting.FileSystemObject") Set objTextFile = objFSO.OpenTextFile _ ("c:\temp\shutlog.txt", ForAppending, True) strComputer = "." Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colLoggedEvents = objWMIService.ExecQuery _ ("Select * from Win32_NTLogEvent Where Logfile = 'System' and " _ & "EventCode = '6006'") For Each objEvent in colLoggedEvents objTextFile.Write(WMIDateStringToDate(objEvent.TimeWritten) & vbTab & _ objEvent.Message) Next Wscript.Echo "ログの書き出しが終了しました" objTextFile.Close Function WMIDateStringToDate(strUTCTime) WMIDateStringToDate = CDate(Mid(strUTCTime, 5, 2) & "/" & _ Mid(strUTCTime, 7, 2) & "/" & Left(strUTCTime, 4) _ & " " & Mid (strUTCTime, 9, 2) & ":" & _ Mid(strUTCTime, 11, 2) & ":" & Mid(strUTCTime, _ 13, 2)) End Function

uran-1007
質問者

お礼

色々と盛りだくさんの情報ありがとう御座います。 参考にさせて頂きます!!

関連するQ&A

  • クライアントのログオンとログオフの記録について

    表題のとおり、クライアントのログオンとログオフの記録について困っています。 グループポリシー管理エディタから Default Domain Policy - コンピュータの構成 - ポリシー - Windowsの設定 - セキュリティの設定 - ローカルポリシー - 監査ポリシー と開いていき、「アカウント ログオン イベントの監査」の成功と失敗にチェックを入れています。 しかし、これだと、だれがいつログオン・ログオフしたのかイベントビューワーのWindows ログのセキュリティを見てもさっぱりわかりません。 そこで、 http://www.monyo.com/technical/windows/35.html を参考にスクリプトを Default Domain Policy - ユーザーの構成 - ポリシー - Windowsの設定 - スクリプト のログオンとログオフに設定したのですが、これだとサーバーのコンソールに直接ログオン・ログオフした結果はイベントビューワーのWindows ログのアプリケーションに記録されるのですが、クライアントからログオン・ログオフした場合は記録されません。 一般的な管理者の皆さんはクライアントからのログオン・ログオフをどのように記録されているのでしょうか? ぜひ、ご意見をお聞かせください。 ちなみに環境はサーバーはWindows Server 2008 R2 Standard、クライアントはWinXPからWin7まで雑多です。

  • windows2000 ログオフの追跡

    windows2000のログオンの追跡はできてますが、ログオフが追跡できません。 下記の記事に「不思議なバグ」があるとありますが、誰かこのバグの解決方法ご存知内でしょうか? ------------------------ 成功したログオン イベント (イベント ID が 528 または 540) と対応するログオフ イベント (Windows 2000 では NT と同様に成功したログオフをイベント ID 538 で記録します) とを結びつけるには、両方のイベントに記録されている [ログオン ID] の番号を使用します。たとえば、Administrator が午後 1 時 27 分にログオンしているイベントを見つけ、この Administrator がログオフした時刻を知りたいとします。イベント ID 528 のログオン ID (例、図 4 の 0x0, 0xEC87) をメモに取り、[イベント ビューア] でセキュリティ ログを右クリックし、[検索] をクリックしてその番号のイベント ログを検索します。ただし、うまくいかないことがあります。Windows 2000 には、NT にもある不思議なバグがあります。OS がイベント ID 538 を記録しないことがたまにあります。(これまで私が知っているところでは、Windows 2000 では対話型ログオンの場合にのみこの問題が発生しています。) つまり、対応する イベント ID 538 が存在しないイベント ID 528 がある場合があります。 ソース:http://www.microsoft.com/japan/technet/prodtechnol/windows2000serv/maintain/monitor/logonoff.mspx#EFAA

  • ログインの記録を見たい。

    XPを使用しています。 コントロールパネル→管理ツール→イベントビューア→セキュリティ の分類がログオン/ログオフとなっているところに ログオンの記録が残っていると、調べました。 しかし確認してみるとシステムイベントしか記録されていません。 何か設定が悪いのでしょうか? もしよろしければ、教えていただけませんか? ぜひよろしくお願い致します。

  • WinXPでイベントが記録されません

    WinXPが動作しているパソコンのイベントビューアを見るとセキュリティに関するイベントが記録されていません。 正確には、最後にログの消去を試行した日時の「成功の監査」が1行だけ記録されます。 アプリケーションやシステムは、それぞれ時々刻々と記録されています。 イベントビューアでプロパティを確認するとアプリケーションやシステムと同じ内容(既定値のまま)になっています。 また当該サービスも自動起動となっており、起動済みであることも確認してあります。 お教え頂きたくお願いいたします。

  • 毎日のshutdown時間をExcelに記録する方法

    こんにちは。よろしくお願いします。 毎日、最後にパソコンをshutdownして退社するので、その時間を使って毎月の退社時間の報告書を簡単に作成できないかと考えています。 起動や停止の時間などを取ってくれるフリーソフトもありますが、 もっとシンプルにshutdownの時間だけを貰って来て、Excelに記録していくというバッチなんかが出来ないかと考えています。 パソコンはWindowsXPです。shutdownの時間を貰えるコマンドを探してみましたが見つけられませんでした。 他の方法のアドバイスなどもありましたら、よろしくお願いします。

  • イベントビューアについて

    電源を入れない限り、絶対にイベントビューアには記録されないのでしょうか? 仮に電源オフ時、イベントビューアにログが残っていた場合、他に何が考えられるのでしょうか?

  • ネットワーク上のPCをリモートでオフにしたい。

    現在会社でネットワークでPCを使っています。会社のPCはすべてWindows98です。 すべてバックアップを取った後に電源をオフにしているのですが rundll32 shell32.dll,SHExitWindowsEx 1 のバッチファイルで操作している端末がオフになるのは判っているのですか、ネットワーク上のPCもリモートでオフにする方法は無いのでしょうか? すべてバッチファイルで行いたいので、市販のソフトは使用せずに命令文でオフにすることは可能なのでしょうか? 宜しくお願い致します。

  • Blade100の電源をOFFする方法を教えて下さい

    Blade100の中古を購入し、solaris10をインストールしました。キーボードとマウスはありませんので、シリアルコンソールを使用しています。 システムを停止するときに shutdown -y -i0 -g0 コマンドを実行しています。これでシステムは停止し okのプロンプトは表示されるのですが、電源がOFFになりません。(仕方なくblade100のケーブルのコンセントを抜いています) コンセントを抜かずに、電源をOFFする方法をご存じの方おりましたら、教えて下さい。 尚、okのプロンプト表示後、全面パネルの電源スイッチを押しっぱなしにしてみましたが、OFFできませんでした。 shutdown -y -i5 -g0もやってみましたが、だめでした。

  • Vine Linuxのcronでの電源OFF

    VineLinux3.2を使っています。 先日自動での電源OFF方法として、cronに登録してOFFする方法を教えていただきました。 しかし、 shutdown -h now を登録して実行されると、system haltedまでは表示されるのですが、 そのまま止まってしまいPCの電源が落ちません。 これはなぜでしょう? ちなみに、コマンドラインで shutdown -h now を打つと、powerdownと表示され、ちゃんと電源が落ちます。 BIOSでは、 ACPI2.0 support : Yes ACPI APIC support : Enable に設定しています。(関係ないですか?)

  • アクセスログについて

    会社のサーバ管理者をしているtani-mariと申します。 Windows NTでのイベントビューアーからアクセスログは取得して管理を 行っているのですが、Windows2000をファイルサーバとしても運用を行っています。Windows2000でもアクセスログを取得することはできるのでしょうか? 管理ツールのなかのイベントビュアーをみてもそれらしいものがでてこないので、無理なのかなぁ~と不安になっています。 もし難しい場合アクセスログを管理できるツールなどをご紹介していただけないでしょうか。 お手数ですがよろしくお願いいたします。