我正在尝试在卸载应用程序后删除用户配置文件Local Application Data文件夹下的一些其他文件。
我读到了自定义动作,所以我写了这个
namespace RemoveUserAppDataCA
{
[RunInstaller(true)]
public partial class Installer1 : System.Configuration.Install.Installer
{
public Installer1()
{
InitializeComponent();
}
[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
public override void Uninstall(IDictionary savedState)
{
base.Uninstall(savedState);
// Very important! Removes all those nasty temp files.
DeleteUserDataProfile();
base.Dispose();
}
void DeleteUserDataProfile()
{
try
{
string path = Path.GetFullPath(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "..\\MyCompanyFolder"));
if (Directory.Exists(path))
{
Directory.Delete(path,true);
}
}
catch (Exception)
{
throw;
}
}
}
}
我将dll文件添加到项目设置中,然后添加了自定义操作,然后在卸载下,我添加了RemoveUserAppDataCA的ddl文件。我建立了系统。
我做了安装,但是当我卸载应用程序时,应用程序用户配置文件本地应用程序数据仍然存在(不会被删除)。
这项工作有什么问题?
答案 0 :(得分:0)
我发现问题,文件夹路径错误。系统指着 “C:\ Users \ UserName \ AppData \ App_Folder”而不是“C:\ Users \ UserName \ AppData \ Local \ App_Folder”