都内で働くSEの技術的なひとりごと / Technical soliloquy of System Engineer working in Tokyo

都内でサラリーマンやってます。SQL Server を中心とした (2023年からは Azure も。) マイクロソフト系(たまに、OSS系などマイクロソフト以外の技術も...)の技術的なことについて書いています。日々の仕事の中で、気になったことを技術要素関係なく気まぐれに選んでいるので記事内容は開発言語、インフラ等ばらばらです。なお、当ブログで発信、発言は私個人のものであり、所属する組織、企業、団体等とは何のかかわりもございません。ブログの内容もきちんと検証して使用してください。英語の勉強のため、英語の

VMware Horizon View Client の動作を確認してみた

 VMware Horizon View を使用してクライアント OS を仮想化したとき、接続元となるクライアントの情報ってどう取得したらいいのかなぁと思って少し調査してみました。
VMware Horizon Viewの提案に必要な知識を身につけよう! パート1 必要なコンポーネント - テックセンター - Blog - テックセンター - Dell コミュニティ

 接続元の情報は、仮想化されたクライアント OS のレジストリの下記の場所に書かれるようです。

HKEY_CURRENT_USER\Volatile Environment

 今回のお仕事では、HOSTNAME に相当する値を取りたかったのですが、仮想化されたクライアントでは、ViewClient_Machine_Name がそれに相当するようです。物理なのか、仮想化されているのかを判断するには、この辺りの情報を参照することで対応できそうですね。

 C# では、Environment クラス (System) を使用することで記述できます。ソースコードは下記の通りです。

var machine_name = Environment.GetEnvironmentVariable("ViewClient_Machine_Name");
if (machine_name == null)
{
    MessageBox.Show("物理端末");
}
else
{
    MessageBox.Show("仮想端末");
}

以上、メモでした。

VMware徹底入門  第4版 VMware vSphere 6.0対応

VMware徹底入門 第4版 VMware vSphere 6.0対応