none
Windows XP 64にインストールできない RRS feed

  • 質問

  • VS2005で作成したプログラムをセットアッププロジェクトにてインストーラを作成します。
    Windows XP 64に、インストールすると
    「システムコポーネント.NET framework 2.0の前提条件の確認に失敗し次のエラーメッセージが生成されました。
    ”64ビットのオペレーションシステムでは、このバージョンの.NET framework 2.0がサポートされていません。
    アプリケーションの開発元に連絡してください。」
    と表示されインストールできません。

    .NET 2003で作成したプログラムはインストールできました。

    こまってます。

    2008年8月5日 10:50

回答

  • しらべました。

    アプリケーションは
    .NET Framework 2.0を使用していないため
    セットアッププロジェクトで作成した.msiをダブルクリックしてインストールすることができました。
    setup.exeが.NET Framework 2.0が必要としるということです。
    setup.exeを実行できるようにするには、
    教えていただいたURLを参考にして、ブートストラッパーをカスタムすることに挑戦しましたが
    時間がかかってしまいますので断念しました。

    別の方法でSetup.exeを実行することができましたので報告いたします。
    結論は、.NET Framework 3.5インストールをしたのち、VS2005で作成したインストーラsetup.exeを実行する
    とインストールできます。

    .NET Framework 3.5をインストールすると
    .NET Framework 3.5
    .NET Framework 3.0
    .NET Framework 2.0 Service Pack 1
    がインストールされます。

    .NET Framework 2.0 Service Pack 1をいれればインストールできるかなと思い
    .NET Framework 3.5
    .NET Framework 3.0
    .NET Framework 2.0 Service Pack 1
    をアンインストールし、
    .NET Framework 2.0 Service Pack 1をダウンロードし
    インストールしようとすると「64ビットはサポートしていない」のメッセージでインストールできませんでした。

    以上です。ありがとうございました。



    2008年8月7日 10:20
  • C++で開発しています。
    必須コンポーネントボタンを押して開くダイアログで、.NET Framework 2.0からチェックを外してテストしてみた結果で投稿したのですが、

    この指摘で気になり確認してみました。
    チェックをはずしてビルドし、再度必須コンポーネントダイアログを見るとチェックがついていたのですが、
    今再度やってみると、おっしゃるとおりうまくいきます。
    てっきりVS2005のインストーラは
    .NET Framework 2.0必須なのだと思い込んでいました。

    この方法に変更して、setup.exeからの実行でうまくいくようになりました。
    ありがとうございました。
    勉強になりました。






    2008年8月8日 10:26

すべての返信

  • VS2005ではx64向けの.NET Framework 2.0パッケージを含んでいません。

    対応するためには自分でブートストラッパーを作る必要があるのかもしれません。

     

    海外のフォーラム等の情報源を貼っておきます。

    http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1654191&SiteID=1

    http://www.eggheadcafe.com/software/aspnet/31613504/64bit-deploy-project-doe.aspx

     

     

    備考

    下のページには全てのプラットフォームに対応した.NET Framework 2.0があると書かれていますが、誤りです。

    http://msdn.microsoft.com/ja-jp/library/7tx0bw8y(VS.80).aspx

    英語版のドキュメントのコミュニティコンテンツで指摘されています。

    http://msdn.microsoft.com/en-us/library/7tx0bw8y(VS.80).aspx

    2008年8月5日 13:54
    モデレータ
  • 早々の回答ありがとうございます。
    こまっていましたので助かりました。
    ありがとうございました。
    参考にします。


    2008年8月6日 0:42
  • しらべました。

    アプリケーションは
    .NET Framework 2.0を使用していないため
    セットアッププロジェクトで作成した.msiをダブルクリックしてインストールすることができました。
    setup.exeが.NET Framework 2.0が必要としるということです。
    setup.exeを実行できるようにするには、
    教えていただいたURLを参考にして、ブートストラッパーをカスタムすることに挑戦しましたが
    時間がかかってしまいますので断念しました。

    別の方法でSetup.exeを実行することができましたので報告いたします。
    結論は、.NET Framework 3.5インストールをしたのち、VS2005で作成したインストーラsetup.exeを実行する
    とインストールできます。

    .NET Framework 3.5をインストールすると
    .NET Framework 3.5
    .NET Framework 3.0
    .NET Framework 2.0 Service Pack 1
    がインストールされます。

    .NET Framework 2.0 Service Pack 1をいれればインストールできるかなと思い
    .NET Framework 3.5
    .NET Framework 3.0
    .NET Framework 2.0 Service Pack 1
    をアンインストールし、
    .NET Framework 2.0 Service Pack 1をダウンロードし
    インストールしようとすると「64ビットはサポートしていない」のメッセージでインストールできませんでした。

    以上です。ありがとうございました。



    2008年8月7日 10:20
  •  やすさん さんからの引用

    アプリケーションは.NET Framework 2.0を使用していないため
    セットアッププロジェクトで作成した.msiをダブルクリックしてインストールすることができました。

    本当ですか?

    それならば、セットアッププロジェクトのプロジェクトのプロパティから必須コンポーネントボタンを押して開くダイアログで、.NET Framework 2.0からチェックを外せば済むはずですけれど…。

     

    (C#やVB.NETで作ったアプリケーションであれば、.NET Frameworkが必要です)

     

     やすさん さんからの引用

    別の方法でSetup.exeを実行することができましたので報告いたします。
    結論は、.NET Framework 3.5インストールをしたのち、VS2005で作成したインストーラsetup.exeを実行する
    とインストールできます。

    それはインストーラとしての役割を果たせていないような気がします。

    その手順を踏まずに、Setup.exeを実行すると、64ビットではインストールできないというエラーになるわけですし、ユーザには分かりにくいと言えるかと思います。
    2008年8月7日 14:15
    モデレータ
  • C++で開発しています。
    必須コンポーネントボタンを押して開くダイアログで、.NET Framework 2.0からチェックを外してテストしてみた結果で投稿したのですが、

    この指摘で気になり確認してみました。
    チェックをはずしてビルドし、再度必須コンポーネントダイアログを見るとチェックがついていたのですが、
    今再度やってみると、おっしゃるとおりうまくいきます。
    てっきりVS2005のインストーラは
    .NET Framework 2.0必須なのだと思い込んでいました。

    この方法に変更して、setup.exeからの実行でうまくいくようになりました。
    ありがとうございました。
    勉強になりました。






    2008年8月8日 10:26