トップ回答者
.NETFramework 3.5 SP1、または、Visual Studio 2008 再頒布のどちらのインストールを選択すべきでしょうか。

質問
-
良案がございましたら、御教授ください。
現在、以下の既存環境で既存アプリケーションが動作しています。
-----
WindowsXP Professional Version 2002 SP3
.NET Framework 2.0
.NET Framework 4.0 Client Profile
.NET Framework 4.0 Extended
Visual C++ 2005 Redistributable
既存アプリケーション(.NET Framework 4.0が必要なアプリケーション)
-----
この環境に、新規アプリケーションを追加したいのです。
新規アプリケーションは、
.NETFramework 3.5 SP1、または、Visual Studio 2008 再頒布のどちらかをインストールすると動作していました。
それで、私が調べたところ、
既存の環境に、
Visual C++ 2008 Redistributableをインストールし、
-----
WindowsXP Professional Version 2002 SP3
.NET Framework 2.0
.NET Framework 4.0 Client Profile
.NET Framework 4.0 Extended
Visual C++ 2005 Redistributable
Visual C++ 2008 Redistributable
既存アプリケーション
新規アプリケーション
-----
とする、または、
.NET Framework 3.5 SP1をインストールして、
-----
WindowsXP Professional Version 2002 SP3
.NET Framework 2.0 SP2
.NET Framework 3.0 SP2
.NET Framework 3.5 SP1
.NET Framework 4.0 Client Profile
.NET Framework 4.0 Extended
Visual C++ 2005 Redistributable
既存アプリケーション
新規アプリケーション
-----
とすれば、既存・新規の両方のアプリケーションを動作させる事ができそうでした。
この場合、どちらの方が良いものなのでしょうか。
私的には、Visual C++ 2008 Redistributable よりは、
.NET Framework 3.5 SP1インストールのの方が良いような気がする(理由はわからない)のですが。
以上、よろしくお願い致します。
- 編集済み upanandah 2013年6月21日 3:30
回答
-
新規に作成したアプリケーションは、.NET Framework を利用しているのでしょうか?それとも利用していないのでしょうか?
使っていないのであれば、.NET Framework をわざわざ導入する必要はありません。入れても入れなくても .NET Framework の存在はそのアプリケーションにとっては全く無関係だからです。
こちらは、必要に応じて、Visual C++ 2008 Redistributable をインストールするか、インストーラ作成時に、C++ のランライム類のマージモジュールをリンクするかのいずれかを選択することになります。
アプリケーションが、.NET Framework を使っているかの判断は
- プロジェクトが、C#またはVBである。
- C++ プロジェクトで、/CLR オプションが有効になっている。
のいずれかが成立します。また、後者の場合は、.NET Framework のインストールと合わせて、VC++ ランタイムも必要になります。
C++プロジェクトで、/CLR オプションが有効になっていない場合は、.NET Framework のインストールは必要ありません。
わんくま同盟,Microsoft MVP for Visual C++(Oct 2005-) http://blogs.wankuma.com/tocchann/
すべての返信
-
まず最初に、「なんとなく」動く条件を知りたいのでしょうか? それとも過不足なく、正確な動作条件を知りたいのでしょうか?
前者であれば、どっちでも構わないでしょう。後者であれば答えられません。というのも、質問文には動いた結果しか書かれていません。正確な条件を知るにはその対象となるプログラムについての情報が必要なのは当たり前ですが、それについては一切の説明がありません。
また質問タイトルの「Visual Studio 2008 再頒布」という表現も間違っています。(質問本文内の記載は正しいです。)これが単なる誤字ならいいですが、記載通りに認識まで誤っているのであれば、認識から改める必要があります。
ともかく、自分の聞きたいことを聞くのではなく、相手に答えてもらいたいことを聞くようにしましょう。
-
新規に作成したアプリケーションは、.NET Framework を利用しているのでしょうか?それとも利用していないのでしょうか?
使っていないのであれば、.NET Framework をわざわざ導入する必要はありません。入れても入れなくても .NET Framework の存在はそのアプリケーションにとっては全く無関係だからです。
こちらは、必要に応じて、Visual C++ 2008 Redistributable をインストールするか、インストーラ作成時に、C++ のランライム類のマージモジュールをリンクするかのいずれかを選択することになります。
アプリケーションが、.NET Framework を使っているかの判断は
- プロジェクトが、C#またはVBである。
- C++ プロジェクトで、/CLR オプションが有効になっている。
のいずれかが成立します。また、後者の場合は、.NET Framework のインストールと合わせて、VC++ ランタイムも必要になります。
C++プロジェクトで、/CLR オプションが有効になっていない場合は、.NET Framework のインストールは必要ありません。
わんくま同盟,Microsoft MVP for Visual C++(Oct 2005-) http://blogs.wankuma.com/tocchann/