【发布时间】:2011-09-20 07:23:08
【问题描述】:
C#,Visual Studio 2010
我有一个应用程序项目和一个连接到该应用程序的安装项目。 在安装项目属性中,我已将 ProductName 属性设置为 MyApp。
我在应用程序文件夹中有两个链接(安装项目), 一个用于启动项目,一个用于卸载
我正在使用在应用程序文件夹中创建卸载程序链接的技术 用一个标志开始我的应用程序和这样的应用程序产品代码 --uninstall [产品代码]
我无法使用 [ProductName] 作为链接名称来启动应用程序,这是为什么呢? 如果我这样做,安装项目将在开始菜单下的应用程序文件夹中创建一个链接 使用名称 [ProductName] 而不是“MyApp”。
如何本地化“删除链接”,今天我将卸载程序链接命名为“删除我的应用程序”? 我希望有可能做这样的事情“strings.Remove [ProductName]”
是否可以将 Setup 项目与我的 MyApp 项目连接起来,使 安装项目改为从 MyApp 项目中获取应用程序名称、版本号等。 像这样 设置属性
ProjectName = MyApp.properties.Application.AssemblyName
/斯蒂芬
我明白了,谢谢你的回答
你为什么不使用 msiexec.exe 命令行
我正在使用 msiexec,我正在像这样在我的应用程序 App 类中调用它
sComLine = CommandLine.CL.get("uninstall"); // Check command line if the --uninstall [ProductCode] is given
if (sComLine != null)
{
string path = Environment.GetFolderPath(Environment.SpecialFolder.System);
System.Diagnostics.ProcessStartInfo uninstallProcess = new System.Diagnostics.ProcessStartInfo(path + System.IO.Path.DirectorySeparatorChar + "msiexec.exe", "/x " + sComLine);
System.Diagnostics.Process.Start(uninstallProcess);
System.Windows.Application.Current.Shutdown();
}
【问题讨论】:
标签: visual-studio installation