que tienen una acción personalizada y la necesidad de conseguir debajo de los valores para copiar algunas partes de la carpeta de instalación a la carpeta VS2010¿Hay alguna forma alternativa de acceder a los detalles de la sesión en acciones personalizadas diferidas?
- ruta del directorio VS2010 (
VS2010DEVENV
propiedad) - Ruta de instalación (
INSTALLLOCATION
propiedad)
Para otorgar suficientes privilegios, configuré una acción personalizada como Execute='deferred' Impersonate='no'
. Sin embargo, cuando se ejecuta el instalador, se registra el mensaje:
No se puede acceder a detalles de la sesión de una acción personalizada no inmediato
Parece que no podemos acceder a una propiedad en una acción personalizada "diferido" (es decir, session["VS2010DEVENV"]
)
¿Hay alguna otra manera para que pueda recuperar esos valores según sea necesario?
Gracias por la [referencia ] (http://msdn.microsoft.com/en-us/library/aa370543.aspx). La propiedad ** CustomActionData ** funciona bien. Pero me pregunto cómo podemos pasar más de un valor. En mi caso, necesito tanto VS2010 como los valores de la carpeta de instalación. ¿Puedes dar algunas pistas si es posible? – jcha
Tendrá que analizar la cadena que pasa en la acción personalizada diferida. Por ejemplo, puede pasar '[VS2010DEVENV] | [INSTALLLOCATION]', y dividir CustomActionData por '|' en CA diferida. Si usa DTF para su CA, tiene una propiedad CustomActionData tipo diccionario, y puede pasarla como 'vs2010 = [VS2010DEVENV]; location = [INSTALLLOCATION]', y obtenerla como 'session.CustomActionData [" vs2010 "] 'y' session.CustomActionData ["location"] ' –
¡Genial! Soluciona totalmente mi caso. Muchas gracias por tus consejos. – jcha