我创建了我的ClickOnce应用程序,它将安装一个包含在WebBrowser控件上的小型Windows窗体应用程序...我需要传递一些参数(这是根据客户端安装),以便正确打开它...
举个例子,假设我需要arg(0)作为打开的url,如果我生成一个正常的安装程序,我将以.exe文件结束,我需要做的就是:
myWebBrowser.exe "http://www.google.com"
但是因为我正在使用ClickOnce方法,所以我最终会使用
myWebBrowser.appref-ms
如果我打开它,它包含正常的URL和其他参数
http://www.myWebSite.com/My.WebBrowser/MyWebBrowser.application#My Web Browser.application,Culture = neutral,PublicKeyToken = 5f83fa0e3f8a8c2b,processorArchitecture = msil
我无法传递参数:(
这是什么诀窍?
添加
我有“允许参数”激活
(来源:balexandre.com)
资源
我发现了这个blog post ......我会尝试并发布我的发现
您应该能够像正常一样使用查询字符串...
http://someserver/folder/some.application?a=b&c=d&e=f
诀窍是你的应用程序如何查找这些参数(加上它必须在发布属性中启用了url参数) - 你应该检查System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed
- 如果设置,查看AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData
(数组中的第一项)或(更简单)ActivationUri
current deployment。