2009-06-15 8 views
5

Creé mi aplicación ClickOnce que instalará una pequeña aplicación de Windows que consiste en un control WebBrowser ... Necesito pasar algunos argumentos (esto se hace por instalación de cliente) en orden para abrirlo correctamente ...Haga clic una vez, pregunta sobre abrirlo con argumentos

como ejemplo, digamos que necesito que arg (0) sea la url para abrir, si genero una configuración normal terminaré con el archivo .exe y todo lo que necesito hacer es:

myWebBrowser.exe "http://www.google.com" 

sino porque estoy usando el método de ClickOnce, estoy terminando con

myWebBrowser.appref-ms 

si lo abro que contiene de forma normal la URL y otros parámetros

http://www.myWebSite.com/My.WebBrowser/MyWebBrowser.application#My Browser.application Web, Culture = neutral, PublicKeyToken = 5f83fa0e3f8a8c2b, processorArchitecture = msil

y que pueda 't pass arguments in it :(

¿Cuál es el truco para esto?

añadido

Tengo "Permitir parámetros" activa

alt text http://www.balexandre.com/temp/2009-06-15_1051_clickOnceAllowURLs.png

recursos

que se enteraron de esta blog post ... Voy a probarlo y post mis hallazgos

+0

(respondido a comentar) –

Respuesta

1

Usted debe ser capaz de utilizar la cadena de consulta como normal ...

http://someserver/folder/some.application?a=b&c=d&e=f 

El truco es cómo su aplicación se ve por esos argumentos (además de que debe tener argumentos la URL habilitada en las propiedades de publicar) - usted debe comprobar System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed - si está configurado, mire AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData (el primer elemento de la matriz) o (más simple) ActivationUri del current deployment.

+0

pronto cambio la usrl del archivo a:? Http://www.myWebSite.com/My.WebBrowser/MyWebBrowser.application#My Web Browser.application a = 1 No puedo abra la aplicación, diciendo en el archivo de registro: + El formato de acceso directo no es válido. y también + La cadena de identidad está mal formada. Esto puede deberse a una coma final, más de dos atributos sin nombre, un nombre de atributo faltante o un valor de atributo faltante. (Excepción de HRESULT: 0x8007370D) – balexandre

+0

Bueno, podría intentar incluir el #My (etc.) en el otro extremo de la cadena, pero parece que el alojamiento del navegador es el punto crítico. ¿Alguna posibilidad de que puedas utilizar Silverlight? –

+0

Eso puedo, no hay problema. Pero necesito ejecutar la aplicación en modo Offline y descubrí que no puedo usar los parámetros de esta manera, la aplicación debe compilarse solo en línea :( – balexandre

Cuestiones relacionadas