DOBON.NET DOBON.NETプログラミング掲示板過去ログ

他PCのイベントログ取得時にエラーとなる

環境/言語:[OS : Windows XP Professional / 言語 : Visual Basic .NET]
分類:[.NET]

【解決したい問題】

こちらのサイトの

[イベントログを取得する]
http://dobon.net/vb/dotnet/system/geteventlogs.html

を参照させて頂き、ログの採取をテストしています。
ネットワーク内の別サーバのイベントを取得したいのですが、

logs = System.Diagnostics.EventLog.GetEventLogs("myMachine")

でアクセスすると、

このリソースにアクセスするのに十分な権限がある事を確認します。
ファイルにアクセスしようとする場合、そのファイルがReadOnlyでない事を確認します

とエラーになってしまいます。
これを、他PCから取得する時にユーザ/パスワードを指定して
取得するにはどうしたら良いでしょうか?

先にコマンドプロンプトから、
NET USE \\myMachine パスワード /USER:ユーザ
でネットワーク接続しておけば取得できる事は確認しました。
> 先にコマンドプロンプトから、
> NET USE \\myMachine パスワード /USER:ユーザ
> でネットワーク接続しておけば取得できる事は確認しました。

  だから、それと同じ動作をプログラムで行えばよいのでは?

  http://msdn.microsoft.com/ja-jp/library/cc446983.aspx
  http://msdn.microsoft.com/ja-jp/library/cc446998.aspx

  上記URLのAPIを調べてみて下さい。

  WNetAddConnection2で認証してから所定の動作を行い、後、
  WNetCancelConnection2で切断する・・・

以上。
有り難うございます。

まだVB.Netの知識が浅いので、WNetAddConnection2 の呼出しがエラーで
うまく接続出来ていませんが、これを使用すると接続している間はエクスプローラ
等からでも相手先PCに接続できてしまうと思われる事と、終了時に切断してしまうと、
逆にそれまで接続できていた接続も切れてしまうと思われる為、この方法は諦めて
WMIでユーザ/パスワード指定して取得する様にしました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板