none
サーバーマネージャーコマンドの使用可否でクライアントOSとサーバーOSを判定するには RRS feed

  • 質問

  • 下記のインストーラの件に付帯する質問ですが、
    https://social.msdn.microsoft.com/Forums/ja-JP/ef57d485-c394-4ab4-b66e-aa8fde55e741/aspnet?forum=aspnetja#917046af-9c22-46c0-b684-eeb41ef9cf10

    インストーラをクライアントマシンとサーバーマシンで恐らく分けなければいけないと覚悟しています。
    ・クライアントマシンにも対象のWebアプリケーションをインストールする必要があるのですが、クライアントマシンにはサーバーマネージャーがありませんので・・・
    サーバーマネージャーのコマンドを使えるかどうか判定するのにプログラムのクライアントOSとサーバーOSを判定する必要があると思っています。

    ネットでいろいろ関連記事を見ているのですが、例えばWindows VistaとWindows 2008, Windows 7とWindows 2008 R2の見分けが紹介されている方法だと
    できない気がします。

    [.NETの方法]
    http://dobon.net/vb/dotnet/system/osversion.html

    [Power Shellの方法]
    http://tech.guitarrapc.com/entry/2013/10/25/075920

    もしかするとOSごとにインストーラを作る必要があるのかもしれませんが・・・
    それともサーバーマネージャーのコマンドを発行して"コマンドがありません"エラーが出たらクライアントマシンと判断するしかないでしょうか?
    ちょっと恰好悪い気がしますが、方法がないのであればその方法も検討いたします。


    • 結合 星 睦美 2016年1月14日 8:33 同じ問題にアプローチしている
    • 分割 星 睦美 2016年1月15日 5:19 スレッド分割
    2016年1月14日 8:25

回答

  • DobonさんのところにあるWMIを使った方法で、ProductTypeを確認すればいいかと思います。ちなみに、結局.NETライブラリの呼び出しなので、PowerShellからでも実行できます。

    // あ、定数間違ってる。正しくは1がワークステーションで3がサーバー。

    // なお、本質的にインストーラをどう作るべきかという質問は私には答えられません。

    • 回答としてマーク ill2 2016年1月15日 7:01
    2016年1月15日 6:00

すべての返信

  • フォーラム オペレーターの星 睦美です。
    新しい質問としてスレッドを作成させていただきました。

    フォーラム オペレーター 星 睦美 - MSDN Community Support

    2016年1月15日 5:26
  • DobonさんのところにあるWMIを使った方法で、ProductTypeを確認すればいいかと思います。ちなみに、結局.NETライブラリの呼び出しなので、PowerShellからでも実行できます。

    // あ、定数間違ってる。正しくは1がワークステーションで3がサーバー。

    // なお、本質的にインストーラをどう作るべきかという質問は私には答えられません。

    • 回答としてマーク ill2 2016年1月15日 7:01
    2016年1月15日 6:00
  • 情報有難うございます。検証させてください。

    2016年1月15日 7:03