如何获取ClickOnce的setup.exe文件夹路径



我有一个一键式应用程序,它部署在文件夹"c:\temp\MyApp"中。在这个文件夹中,我有一个配置文件"MyAppDynamic.config",我希望我的一键式应用程序在启动时读取它。

当我单击c:\temp\MyApp\setup.exe时,ClickOnce应用程序部署在%APPDATA%中。。文件夹,因此我无法获取启动clickonce的文件夹位置。

  1. 有没有办法在clickonce应用程序中获取发布位置
  2. 我做错什么了吗

谢谢,

RDV

更多信息:

我的clickonce应用程序的主要目的是在客户端上安装一堆预请求。这些预请求可以位于网络上的任何位置(它们的位置取决于特定组件是在开发中还是在生产中)。我不想更新clickonce安装程序,只是因为一些动态位置发生了变化,这就是为什么我不想在clickonces应用程序中硬编码安装路径。

因此,我使用了一个外部文件"MyAppDynamic.config",在其中我更新了所有组件的安装路径,并将此文件放在setup.exe所在的已发布文件夹中。

问题是,我想在ClickOnce应用程序启动时读取此文件,但任何系统/环境变量都不会给我此已发布的位置,因为此时ClickOnce已部署在客户端上,并且所有位置/代码库路径都指向%APPDATA%。。

问题:

  1. 部署的clickonce应用程序是否可以获得其安装目录路径(我已验证IsolatedStorage不提供此信息)?

  2. 以上是不可能的,有没有什么想法可以实现呢?同样,我甚至不想硬编码MyAppDynmaic.config文件的位置。但如果没有其他办法,这将是我最好的选择:-(

谢谢,

RDV

无法获取或设置安装位置。出于安全目的,安装文件夹位于"独立存储"下。您可以读取配置文件。检查此答案;

如何获取应用程序';的路径?

相关内容

最新更新