検索
連載

マシン名/ユーザー名を取得するには?.NET TIPS

Share
Tweet
LINE
Hatena
「.NET TIPS」のインデックス

連載目次

 エラー・ログの出力時や、アプリケーションの設定をマシンごと、あるいはユーザーごとに個別に保存するような場合、プログラムを実行しているマシン名や、システムにログオンしている人のユーザー名が必要となることがある。これらはEnvironmentクラス(System名前空間)に用意されたstaticなプロパティから、次のようにして簡単に取得することができる。

string machine = Environment.MachineName;
string user    = Environment.UserName;

 次のサンプル・プログラムはこうして得られた値を画面に表示する。

// machinename.cs

using System;

public class MachineUserName {
  static void Main() {

    string machine = Environment.MachineName;
    string user    = Environment.UserName;

    Console.WriteLine(machine); // 出力例:TAKAMAIN
    Console.WriteLine(user);    // 出力例:taka-e
  }
}

// コンパイル方法:csc machinename.cs

マシン名とユーザー名を表示するC#のサンプル・プログラム(machinename.cs)
machinename.csのダウンロード

 なお、MachineNameプロパティにより得られるマシン名は、正確には「NetBIOS名」(あるいは「NetBIOSコンピュータ名」)と呼ばれるものだ。これとは別に、Windows OSではDNSなどから取得できるホスト名(DNSホスト名)もコンピュータの名前として用いられることがある。両者はたいていの場合同一となるが(どちらも大文字、小文字は区別されない)、NetBIOS名は最大15文字であるため、コンピュータに設定した名前が切りつめられてNetBIOS名が設定される場合などもある。

 NetBIOS名ではなくDNSホスト名を取得する方法については、「TIPS:プログラムを実行しているマシンのホスト名を得るには?」で解説している。

カテゴリ:クラス・ライブラリ 処理対象:Windows環境
使用ライブラリ:Environmentクラス(System名前空間)
関連TIPS:プログラムを実行しているマシンのホスト名を得るには?

「.NET TIPS」のインデックス

.NET TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

ページトップに戻る