1

Visual Studio msiインストーラーを使用して、空のプロジェクトを作成しました。インストール時に、フォルダとexeファイルをプロジェクトに作成するだけです。

しかし、サイレントアンインストールしようとすると、プログラムリストからインストールが削除されますが、フォルダーは残ります。フォルダも削除する必要があり、コードで手動で削除せずに削除したいと思います。

   // This is how to uninstall a basic msi app

        // Create the uninstall process.
        Process proc = new Process();

        // Define the parameters for the process
        proc.StartInfo.FileName = "msiexec.exe";

        // This is the Product Code from your Basic MSI InstallShield Project

        proc.StartInfo.Arguments = "/x" + " " + ProductCode + " " + "/qn";

        // Start the process.
        proc.Start();

        // Wait for the uninstall process to end.
        proc.WaitForInputIdle();
        proc.WaitForExit();

        // Release resources.
        proc.Close();
4

1 に答える 1

0

/L logfile.txtのコマンドラインオプションを使用してログファイルを出力するようにMSIに指示しますmsiexec。アンインストーラがインストールファイルを削除できない理由がわかります。考えられる原因には、フォルダがロックされている(削除するには再起動が必要)か、フォルダのファイル権限が削除を妨げていることが含まれます。詳細については、WixインストーラーがインストールフォルダーまたはInstallshieldを削除できなかった、プログラムをアンインストールしてもすべてのフォルダーが削除されなかったを参照してください。

于 2012-09-22T11:44:37.213 に答える