2

Visual Studio を使用してアプリケーションをビルドし、そのインストーラー プロジェクトを作成しました。このアプリケーションをインストールしたことのある場所ならどこでも、1 つの特定の 2008 R2 サーバーを除いて、完全に動作します。

インストーラーで指定されたフォルダーに関係なく、プログラムは常に 1 つのサーバーの C: のルートにインストールされます。他の場所でも完璧に機能します。

前にこのようなものを見た人はいますか?

ありがとう

これはターミナル サーバーです。それが違いを生むかどうかはわかりません。

4

1 に答える 1

2

インストールを調査する最善の方法は、詳細なログを作成することです。ログには、インストール パスに関して必要なすべての情報が含まれます。それらのデフォルト値は何ですか、それらを変更するものなど...

ログの解析に問題がある場合は、ログへのリンクを投稿して、ダウンロードして確認できるようにします 。Windows インストーラーの詳細ログを読むのは非常に簡単です。

編集: ログにリンクされたログから、620 行目で、この " Machine policy value 'EnableUserControl' is 0 " を取得できます。EnableUserControl ポリシーが有効になっているため、インストールパス (「TARGETDIR」) を格納するプロパティは、UI シーケンスからインストールの実行シーケンスに渡されず (622 行目「許可されていないプロパティ TARGETDIR を無視する」を参照)、インストーラーはそれをリセットします。

MSDN のリンクされた記事に記載されているレジストリを編集して、このポリシーを値「1」に戻す必要があります。

于 2013-08-05T05:43:09.273 に答える