ログオン スクリプトとして使用される C# プログラムに取り組んでいます。診断目的で、アプリケーション ログに書き込みできるようにしたいと考えています。残念ながら、私が見つけたすべてのドキュメントには、特権の昇格が必要なセキュリティ ログをクエリせずにイベント ソースを作成することは不可能であると記載されています。これは明らかに、ログオン スクリプトには使用できません。
この昇格要求なしでイベント ソースを作成する方法はありますか? または、別の場所、または既存のイベント ソースはありますか?
ログオン スクリプトとして使用される C# プログラムに取り組んでいます。診断目的で、アプリケーション ログに書き込みできるようにしたいと考えています。残念ながら、私が見つけたすべてのドキュメントには、特権の昇格が必要なセキュリティ ログをクエリせずにイベント ソースを作成することは不可能であると記載されています。これは明らかに、ログオン スクリプトには使用できません。
この昇格要求なしでイベント ソースを作成する方法はありますか? または、別の場所、または既存のイベント ソースはありますか?
内部的には、イベント ソースを作成するにはレジストリ キーへの書き込みが必要HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLogであり、これは管理ユーザーのみが書き込み可能です。したがって、これに基づいて構築された API には、昇格されたアクセス許可が必要になります。イベント ソースの作成は、昇格後に行う必要があります。
ただし、イベント ソースを作成すると、実際にイベントを報告するために昇格されたアクセス許可は必要ありません。インストーラーを実行できる場合、インストーラーは昇格を要求し、イベント ソースを作成できます。その後、アプリケーションは、他のアプリケーションと同じようにイベントを報告するだけです。しかし、これはログオン スクリプトでは、一種の仕方のない状況だと思います。
標高がないと無理だと思います。レジストリで変更できるアクセス許可がいくつかあるかもしれませんが、それには昇格が必要です.catch 22.
ただし、テキスト ファイルにログを記録しても問題はありません。プログラムを使用している人が、ここがログの場所であることを知っている限り、テキスト ファイルも同様に機能します。