Windows .NET アプリケーションで作業しており、イベント ログに書き込みたいと考えています。
Public Shared Sub WriteExceptionToEventLog(ByVal message As String)
Dim cs As String = "TESTLOG"
Dim elog As New EventLog()
Dim sourceExist As Boolean
Try
sourceExist = EventLog.SourceExists(cs)
Catch ex As Exception
sourceExist = False
End Try
If Not sourceExist Then
Dim ev As New EventLogPermission(EventLogPermissionAccess.Administer, ".")
ev.PermitOnly()
EventLog.CreateEventSource(cs, "TESTLOG")
End If
elog.Source = cs
elog.EnableRaisingEvents = True
EventLog.WriteEntry(cs, message, EventLogEntryType.[Error])
End Sub
しかし、Windows 7 のユーザーは Eventlog に書き込むために管理者権限が必要なため、これは機能しません。「Run ad Admin」モードでアプリケーションを実行したときも同じことが成功しました。
vb.net のコード セグメントに管理者権限を与える方法はありますか (なりすまし以外)?