【发布时间】:2009-10-05 10:07:35
【问题描述】:
我想以编程方式确定我正在运行的单击一次应用程序的“发布位置”(服务器上包含安装的位置)。我知道 appref-ms 文件包含此信息,我可以解析此文件以找到它,但应用程序不知道 appref-ms 文件的位置,我似乎无法找到确定此位置的方法.
有没有人知道如何在我的应用程序中轻松确定发布位置?
【问题讨论】:
标签: .net deployment clickonce
我想以编程方式确定我正在运行的单击一次应用程序的“发布位置”(服务器上包含安装的位置)。我知道 appref-ms 文件包含此信息,我可以解析此文件以找到它,但应用程序不知道 appref-ms 文件的位置,我似乎无法找到确定此位置的方法.
有没有人知道如何在我的应用程序中轻松确定发布位置?
【问题讨论】:
标签: .net deployment clickonce
System.Deployment.Application.ApplicationDeployment.CurrentDeployment 上有很多属性应该可以回答您的问题。
您可能想查看.ActivationURI 或.UpdateLocation 以获得所需的路径。
(可能值得先检查ApplicationDeployment.IsNetworkDeployed 是否为真,否则会出现异常。)
【讨论】:
如果您的应用程序处于离线/在线状态,您可以通过在开始菜单中查找 appref-ms 文件来找到它。
shortcutName = string.Concat(Environment.GetFolderPath(Environment.SpecialFolder.Programs), "\", publisher_name, "\", product_name, ".appref-ms");
其中 publisher_name 和 product_name 是“发布”属性页中“选项”对话框中的条目。
否则,您应该可以在桌面上找到它。
RobinDotNet
【讨论】: