使用に同意するものと見なされます。コード提供終了済みコンテンツ申し訳ありません。リクエストされたコンテンツは削除されています。自動的にリダイレクトされます。質問0サインインして投票お世話になっております。サービスプログラムを開発しています。使ってイベントログ出力を検出し、ログに残す仕組みを構築しました。端末ログイン状態から、シャットダウンを行った際にうまくログオフイベントが拾えない場合がありご相談させていただきます。エラーのため、ログオフのイベントが拾えず、次回電源ONになってサービスが起動した際に拾えていました。※100%この事象が起こるわけではなく、正しくログオフイベントを拾える場合もあります。拾えた場合は、サービス停止を5秒延長して別サーバーにログを送ってからサービスを停止しています。内容:ユーザー開始のログオフ:・・・という順番で記録されていました。なっていたと考えております。対応案シャットダウン時にどうにかしてログオフイベントを拾って別サーバーに送ってから電源OFFにさせたいです。そのため、イベントログサービスの停止の順番を制御し、開発したサービスよりも後ろにすればよいかと考えたのですが、そのようなことが可能でしょうか。他に何か良い方法があれば助言頂きたく、どうぞよろしくお願い致します。さま返信遅くなり大変申し訳ございません。ご教示頂いた通り、サービスがシャットダウン通知を受け取った際に、待つだけではなくて能動的に取得すればイベントログは取得できるかもしれません。別の手段で解決しました。助言頂きありがとうございました。実行するバッチを登録するという方法です。5秒経過後に、サービスの停止処理開始となりました。こちらで様子を見て頂く事になりました。ありがとうございます。8:58返信|引用すべての返信0サインインして投票シャットダウンはタイミングがいろいろ面倒くさくなるので、別途扱った方がよいのでは。サービスというのであれば、RegisterServiceCtrlHandlerExあたりを登録しておいて、SERVICE_CONTROL_PRESHUTDOWNを拾って処理するとか。start」とあるように、要するに「今すぐ電源を切りたいのに、ネットワーク/サーバが死んでるのでシャットダウンできない」的な事態になるとは思います。22:43返信|引用0サインインして投票シャットダウン時にどうにかしてログオフイベントを拾って別サーバーに送ってから電源OFFにさせたいシャットダウン時にネットワークが生きている(ネットワークドライバ他、関連サービスが停止前)というのは確認済みでしょうか?個人的にはシャットダウン時にネットワーク通信を行うのは非現実的と思います。さまありがとうございます。シャットダウン時にサービスから能動的にイベントログを拾ったりはしていないため、PRESHUTDOWNを拾ってもイベントログが拾えない問題は解決しないと考えております。実行がエラーになり、ログオフイベントが検出できないことが問題と考えておりまして、エラーにならないように、イベントログサービスの終了を遅くできないか?を調べておりました。佐祐理さまありがとうございます。確かにおっしゃる通りネットワークをあまり気にしておりませんでした。正常にログオフイベントが拾えた場合は転送までうまくいっていまして、ネットワークは問題無いかと考えています。シャットダウン通知があなたのサービズに届いたのであれば、それはログオフであるわけで、別途イベントログを改めて待つ必要は無い、と申し上げたつもりですが。2:16返信|引用0サインインして投票supaoさん、こんにちは。フォーラムオペレーターのHarukaです。MSDNフォーラムにご投稿くださいましてありがとうございます。Windowsの一部であるシステムイベント通知サービステクノロジーを使用できます。https://docs.microsoft.com/en-us/windows/win32/sens/system-event-notification-service-portal?redirectedfrom=MSDNログオン/ログオフイベント(およびリモートセッション接続などの他のイベント)を提供するISensLogon2インターフェイスがあります。https://docs.microsoft.com/en-us/windows/win32/api/sensevts/nn-sensevts-isenslogon2?redirectedfrom=MSDN下記のコードサンプルをご参照いただければと思います。https://stackoverflow.com/a/16395444/10611792どうぞよろしくお願いします。Haruka~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、ご協力くださいますようお願いいたします。MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。さま返信遅くなり大変申し訳ございません。ご教示頂いた通り、サービスがシャットダウン通知を受け取った際に、待つだけではなくて能動的に取得すればイベントログは取得できるかもしれません。別の手段で解決しました。助言頂きありがとうございました。実行するバッチを登録するという方法です。5秒経過後に、サービスの停止処理開始となりました。こちらで様子を見て頂く事になりました。ありがとうございます。さま返信遅くなり申し訳ございません。教えて頂いたサイトについてですが、こういった技術がある事を知りませんでした。ありがとうございます。基本的にはCOMは使用しないでコーディングしておりまして、(お恥ずかしい話ですがCOMの使い方があまり分かっていないのが正直なところです)時間もあまり無かったため、別に投稿したシャットダウンスクリプトでひとまず様子を見ることになりました。ご教示頂きありがとうございます。