在卸载应用程序期间从数据库中删除表

时间:2014-06-10 11:07:27

标签: c# .net setup-project uninstall

是否可以在.NET C#中放置任何带有安装项目的脚本,这样我可以从表中删除几行或从控制面板卸载安装程序时从数据库中删除整个表?我需要在卸载Windows应用程序时从其数据库中删除所有数据

2 个答案:

答案 0 :(得分:1)

您可能必须准确定义“它对我而言也不起作用”的含义。该代码是一个卸载自定义操作,但除非您已将其作为卸载自定义操作添加到安装项目中,否则不会调用它,如果这是您的意思,它不起作用。假设您将其添加为卸载自定义操作,这些功能确实有效。

它不起作用的另一种方式是你可能不会看到console.writeline工作。这不是在交互式用户的shell中运行的应用程序代码。这是使用系统帐户运行的msiexec.exe进程的回调,因此很可能不会让您做任何事情来与交互式用户的桌面进行交互,并且我不清楚如果您尝试写入该对象会发生什么系统帐户的控制台,因为我怀疑它有一个。这也意味着如果您要添加代码以从数据库中删除表,那么数据库需要允许系统帐户访问,这是默认情况下可能不允许的。

答案 1 :(得分:0)

只需从sql中删除表,然后再进行卸载

drop tablename 从tablename中删除*行的条件