0

私はソフトウェア開発に不慣れです(プログラミングではありませんが)。私は商用リリース用の最初のアプリケーションを提供する過程にあり、シングルクリックのインストーラー パッケージが必要です。私はいくつかの解決策を調べました.C#で独自にコーディングしました(基本的に、3つのフォルダーをそれぞれの宛先に取得するだけです)が、いくつかのIOライブラリをバンドルする際にいくつかの問題に遭遇しました. Visual Studio Express 2012 を使用しているため、InstallShield モジュールを使用できません。私は WiX を見つけました。オンラインでいくつかのチュートリアルがありますが、このサービスの学習曲線はかなり高く、かなり混乱していると言って間違いありません。

私は3つのフォルダを持っています:

  1. myApplication2013 フォルダー
  2. myApplication2014 フォルダー
  3. System.Data.SQLite.dll

私のC#コードのロジックは次のとおりです。

public static void installer(){
        deleteLegacyFiles(); // deletes legacy myApplication directories and files
        moveSQLite(); // moves system.data.sqlite database to directory
        if(checkRevit2013()){ // install myApplication 2013 if Revit 2013 is installed
            moveMyApplication2013();
        }else if(checkRevit2014()){ // if Revit 2014 is installed, install myApplication 2014
            moveTally2014();
        }else{ // tell user both Revit 2014 and Revit 2013 is not installed
            System.out.println("It does not look like you have either Revit 2013 or Revit 2014 installed.");
        }
    }

ターゲットの場所は、ターゲットの場所と同様に、.msi によって指定されます。

  1. myApplication-2013 は次のとおりです。C:\\ProgramData\\Autodesk\\REVIT\\Addins\\2013
  2. myApplication-2014 は次のとおりです。C:\\ProgramData\\Autodesk\\REVIT\\Addins\\2014
  3. System.Data.SQLite.dll は次のとおりです。C:\\Windows\\Microsoft.NET\\assembly\\GAC_64

インストーラーが実際に行うことは、ソース フォルダー/ファイル (上記の 3 つから) を取得し、それらを文字通りターゲットの場所にコピーすることです。これは、私の C# スクリプトが行うことでもあります (ただし、IO ライブラリを使用します)。WiX に必要な手順は何ですか? 私はとても混乱しています。

マージ モジュールも作成する必要があります。

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

4

1 に答える 1

2

私のオープン ソース ツールISWIXには、インストーラーのスタブ化を支援する Visual Studio のプロジェクト テンプレートがあります。ファイルをマージ モジュールにオーサリングするためのグラフィカル UI もあります。体験がどのようなものかを示す手順とビデオを含む記事を次に示します。

于 2013-10-28T20:21:54.903 に答える