コンピューター名、ログインユーザー名を取得する方法
文書番号:20560
ログインユーザー名、コンピューター名を取得する方法です。
これらの情報は「System.Environment」を参照する方法と、「My」を参照する方法があります。
それぞれの値を参照してメッセージボックスに表示するサンプルです。
【ログインユーザー名を取得する】
-
「System.Environment」を参照してログインユーザー名を取得する
MessageBox.Show(System.Environment.UserName)
----------
user01
MessageBox.Show(My.User.Name)
----------
domain\user01
ワークグループの場合は コンピューター名\ユーザー名 になります。
【コンピューター名を取得する】
-
「System.Environment」を参照してコンピューター名を取得する
MessageBox.Show(System.Environment.MachineName)
----------
pc01
MessageBox.Show(My.Computer.Name)
----------
pc01
リモートデスクトップ接続やXenAppなどの環境では上記の方法でコンピューター名を参照すると接続先のコンピュータ名が返ります。
接続しているクライアントのコンピューター名を参照する場合は環境変数を参照する方法があります。
リモートデスクトップ接続などでサーバーへ接続して実行した例
MessageBox.Show(My.Computer.Name)
----------
Server01
クライアントのコンピューター名を取得する
MessageBox.Show(Environ("CLIENTNAME"))
----------
pc01
セッション名を取得する
ローカルコンピューターで実行した例
MessageBox.Show(Environ("SESSIONNAME"))
----------
Console
リモートデスクトップ接続などでサーバーへ接続して実行した例
MessageBox.Show(Environ("SESSIONNAME"))
----------
RDP-Tcp#119
リモートデスクトップ環境で値を確認するとプロトコルによって名前が変わったり、セッション番号が付加されるので判断しづらいので、 「Console」かそうでないかで判断するといいかもしれません。