none
インストーラ アプリケーションフォルダ削除 RRS feed

  • 質問

  • いつもお世話になっております。

     

    環境VS2005 C# WinXP

     

    インストーラを作成しているのですが、

    「アプリケーションフォルダ」の項目からフォルダを削除しようとすると

    ファイルやサブフォルダがあるから削除できないと言われます。

    そうは言ってもアプリケーションフォルダは複雑で、

    バージョンアップごとに一枚一枚ファイルを削除していくのは面倒なので

    一気に削除したいのですが、どうすればよろしいでしょうか。

     

    また、「アプリケーションフォルダ」内にDLLが含まれる場合に

    xxx.dll

    xxx.DLL

    という2つのアセンブリが勝手に登録され

    「複数のオブジェクトのターゲットの場所が同じです」

    という警告が出ます。当然同じファイルではあるのですが、

    何故、アセンブリとして2つ登録されるのかがわかりません。

    対処方法をご教授いただけますでしょうか

    2008年1月31日 1:51

回答

  •  Myon さんからの引用

    インストーラを作成しているのですが、

    「アプリケーションフォルダ」の項目からフォルダを削除しようとすると

    ファイルやサブフォルダがあるから削除できないと言われます。

    そうは言ってもアプリケーションフォルダは複雑で、

    バージョンアップごとに一枚一枚ファイルを削除していくのは面倒なので

    一気に削除したいのですが、どうすればよろしいでしょうか。

    ファイルシステムエディタまたはソリューションエクスプローラで該当のファイルを複数選択して[Delete]キーぐらいしかないと思います。

    vdprojファイルを直接いじることでも出来そうですが、間違えて壊してしまいそうで怖いです。

     

     Myon さんからの引用

    また、「アプリケーションフォルダ」内にDLLが含まれる場合に

    xxx.dll

    xxx.DLL

    という2つのアセンブリが勝手に登録され

    「複数のオブジェクトのターゲットの場所が同じです」

    という警告が出ます。当然同じファイルではあるのですが、

    何故、アセンブリとして2つ登録されるのかがわかりません。

    対処方法をご教授いただけますでしょうか

    セットアップに追加している複数のプロジェクトが参照しているファイルやプロジェクト(の出力ファイル)が同じ時に起こりますね。

    セットアップビルド時の警告ですので気にしなくてもいいと思います。

     

    まったくどちらも同一ということならば、片方をファイルシステムエディタまたはソリューションエクスプローラで選択して、プロパティウィンドウのExcludeをtrueに(ソリューションエクスプローラの「見つかった依存関係」の中の該当ファイルを右クリックで「除外」するのも同じ)すればいいのではないでしょうか。

    2008年1月31日 2:55
  • バージョンアップとフォルダ構成の複雑さとの関係がよく分かりません。

    バージョンアップのたびにフォルダ構成が大きく変わるという事でしょうか?

     

     Myon さんからの引用

    普通はどのようにされているのでしょうか。

    フォルダ構成はほとんど変わらず、実行ファイル/設定ファイルの更新のみというケースが多いのでないかと思います。

    2008年1月31日 12:13

すべての返信

  •  Myon さんからの引用

    インストーラを作成しているのですが、

    「アプリケーションフォルダ」の項目からフォルダを削除しようとすると

    ファイルやサブフォルダがあるから削除できないと言われます。

    そうは言ってもアプリケーションフォルダは複雑で、

    バージョンアップごとに一枚一枚ファイルを削除していくのは面倒なので

    一気に削除したいのですが、どうすればよろしいでしょうか。

    ファイルシステムエディタまたはソリューションエクスプローラで該当のファイルを複数選択して[Delete]キーぐらいしかないと思います。

    vdprojファイルを直接いじることでも出来そうですが、間違えて壊してしまいそうで怖いです。

     

     Myon さんからの引用

    また、「アプリケーションフォルダ」内にDLLが含まれる場合に

    xxx.dll

    xxx.DLL

    という2つのアセンブリが勝手に登録され

    「複数のオブジェクトのターゲットの場所が同じです」

    という警告が出ます。当然同じファイルではあるのですが、

    何故、アセンブリとして2つ登録されるのかがわかりません。

    対処方法をご教授いただけますでしょうか

    セットアップに追加している複数のプロジェクトが参照しているファイルやプロジェクト(の出力ファイル)が同じ時に起こりますね。

    セットアップビルド時の警告ですので気にしなくてもいいと思います。

     

    まったくどちらも同一ということならば、片方をファイルシステムエディタまたはソリューションエクスプローラで選択して、プロパティウィンドウのExcludeをtrueに(ソリューションエクスプローラの「見つかった依存関係」の中の該当ファイルを右クリックで「除外」するのも同じ)すればいいのではないでしょうか。

    2008年1月31日 2:55
  • 早速のご回答ありがとうございました。

     

    フォルダ構成がとにかく複雑で、

    現在はバージョンアップごとにインストーラを

    1から作り直した方が早いという状態です。

    普通はどのようにされているのでしょうか。

     

    vdprojファイルを見てみましたが、

    どこを削除したらどこが変わるのかよくわかりませんでした。

     

    警告の件は無視でよいとの事で安心しました。

    ただ、この警告が出ているアセンブリは除外しないと

    Deleteボタンでも消せないみたいで、やはり上の問題と関ってきます。

    う~、かなり不便に思うのですが・・・。

     

    2008年1月31日 4:17
  • バージョンアップとフォルダ構成の複雑さとの関係がよく分かりません。

    バージョンアップのたびにフォルダ構成が大きく変わるという事でしょうか?

     

     Myon さんからの引用

    普通はどのようにされているのでしょうか。

    フォルダ構成はほとんど変わらず、実行ファイル/設定ファイルの更新のみというケースが多いのでないかと思います。

    2008年1月31日 12:13
  • ご回答ありがとうございました。

    まだ初期段階のため変更が多いことと、

    ライブラリを複数名で開発しているので、DLLの参照不一致等を

    避けるため、一部分の入れ替えではなく、

    社内テストした実行環境を丸ごとインストーラーに

    入れ込むということを行っています。

     

    アプリケーションフォルダが空の状態の

    雛形を作っておくことで何とか対応していきたいと思います。

    ありがとうございました。

     

    2008年2月3日 23:52
  • こんにちは。中川俊輔 です。

     

    IIJIMASさん、C.Johnさん、大変参考になる回答ありがとうございます。

     

    Myonさん、フォーラムのご利用ありがとうございます。

    問題が解決されたようなので、IIJIMASさん、C.Johnさんの回答へ回答済みチェックをつけさせていただきました。

     

    回答済みチェックが付くことにより、有用な情報を探している方が情報を見つけやすくなります。

    問題解決につながる回答があった場合は、なるべく回答済みボタンを押してチェックを付けてください。

    Myonさんはチェックを解除することもできますので、ご確認ください。

     

    それでは!

     

    2008年2月12日 7:46