4

C# アプリケーションでプログラムをアンインストールしようとしていますが、プログラムがコントロール パネルの [プログラムと機能] にまだリストされていることを除いて、すべてが機能します。

これは、wmic を使用してコマンド ラインからアンインストールするときにも行われます。

プログラムはアンインストールされていますが、ウィンドウがポップアップしてアンインストールされたことを知らせるには、コントロール パネルの [プログラムと機能] で実際に名前をクリックする必要があります。その後、それは永久になくなりました。コントロールパネルにアクセスして完全に削除する必要を回避するにはどうすればよいですか。アンインストールして、コントロール パネルに表示されないようにする必要があります。

これは正しいように見えるアンインストールする私のコードです:

string programName = "myProgram";
ManagementObjectSearcher mos = new ManagementObjectSearcher("SELECT * FROM Win32_Product");

foreach (ManagementObject mo in mos)
{
    if (mo["name"].ToString().Contains(programName))
    {
        mo.InvokeMethod("Uninstall", null);
        MessageBox.Show(mo["name"].ToString() + " uninstalled");
    }
}
4

1 に答える 1

-1

アンインストールのログを確認し、アンインストールが成功し、F5 キーを押して更新した後でもエントリがまだコントロール パネルに存在する場合は、アンインストールする製品のレジストリ エントリ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall を削除します。 \

于 2016-08-23T14:20:54.527 に答える