我点击一次在文件夹中部署的应用程序说“c:\ temp \ MyApp”。在这个文件夹中,我有一个配置文件“MyAppDynamic.config”,我希望我的点击一次应用程序在启动时读取。
当我点击c:\ temp \ MyApp \ setup.exe时,ClickOnce App部署在%APPDATA%..文件夹中,因此我无法从启动clickonce的位置获取文件夹位置。
谢谢,
RDV
更多信息:
我的clickonce应用程序的主要目的是在客户端盒上安装一堆预先请求。这些预先请求可以位于网络上的任何位置(它们的位置根据特定组件是在开发还是生产中而变化)。我不想更新clickonce安装程序只是因为某些动态位置已更改,这就是为什么我不想在ClickOnce应用程序中对安装路径进行硬编码的原因。
因此,我正在使用外部文件“MyAppDynamic.config”,我在其中更新所有组件的安装路径,并将此文件放在setup.exe所在的已发布文件夹中。
问题是我想在ClickOnce应用程序启动时读取此文件,但是任何系统/环境变量都不会给我这个发布的位置,因为此时,ClickOnce已经部署在Client Box上,并且所有Location / CodeBase路径都指向% APPDATA%..
问题:
部署的clickonce应用程序是否可以获取其安装目录路径(我验证过IsolatedStorage不提供此信息)?
以上是不可能的,有什么想法如何实现这个?我甚至不想硬编码MyAppDynmaic.config文件的位置。但如果没有其他工作,这将是我最好的选择: - (
谢谢,
RDV
答案 0 :(得分:0)
无法获取或设置安装位置。出于安全目的,安装文件夹位于隔离存储下。您可以阅读配置文件。检查这个答案;
How can I get the application's path in a .NET console application?