• ベストアンサー

LAN内にログオン中のユーザーを確認する方法

意図は離れた場所にいる友人が今会社にいるかどうかを確認することにあります。 コンピュータ名がわかればPingを打つこともできますが、 使用するマシンが一定でないので、ユーザー名で確認する方法を知りたいのです。 2000またはXPの標準的な機能のみでできませんか? UNIXのFingerみたいな機能です。

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

  • ベストアンサー
  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.1

リモート(クライアント)コンピュータに対してWMIが実行できるような設定になっている場合、次のスクリプトで、リモートコンピュータに現在ログオンしているユーザ名が分かります。 strComputer = "クライアント名" Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" _ & strComputer & "\root\cimv2") Set colComputerSystem = objWMIService.ExecQuery _ ("Select * from Win32_ComputerSystem") For Each objComputerSystem in colComputerSystem Wscript.Echo objComputerSystem.UserName Next これで人を探すには、使う可能性のあるリモートコンピュータを片っ端から調べる必要がありますが・・・ リモートコンピュータに対してWMIが実行できる設定を行う手順は Connecting to WMI on a Remote Computer http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/connecting_to_wmi_on_a_remote_computer.asp Connecting Through Windows Firewall http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/connecting_through_windows_firewall.asp を参照してください。

banker_U
質問者

お礼

ご回答ありがとうございます。 ごめんなさい。せっかくご回答いただいたのですが、正直理解できません。 私のレベルはWMIって何?って言うレベルです。 VBAとか多少わかるので、書いてある内容に多少の見当はつきますが、このスクリプトをどうやって走らせるのかもわかりません。テキストファイルで、何らかの拡張子をつけて保存してダブルクリックとかですか? それとやっぱり使う可能性のあるコンピュータ名はあらかじめ把握しておく必要があるってことですよね。それはちょっと難しいです。 昔フリーで手に入れた「Messenger2000」というインスタントメッセンジャーで、ユーザー名だけでメッセージを飛ばせるので、ユーザー名だけでその人がネット上に存在しているかわかる方法はあると思うんですが、簡単には無理でしょうか?

その他の回答 (2)

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.3

私は使っていませんが、事前にインストールしなくても使えるWebあるいはJavaベースのメッセンジャー系サービスもあるようです。

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

簡単に行うのであれば、標準機能ではなくメッセンジャー系のソフトないしサービスを使うのがよいでしょう。

banker_U
質問者

お礼

ありがとうございます。 やっぱりそうなっちゃいますか。 会社のパソコンなんで、インストールの必要なソフトは使えないんです。 それで、標準機能で何かないかなと思ったんですが・・・ 残念です。 お手数をおかけしました。ありがとうございました。