2010-08-16 14 views
14

Estoy intentando iniciar sesión desde mi Acción personalizada C# utilizando session.Log ("¡Hola mundo!"); Esto no aparece en mi archivo de registro al ejecutar mi msi de la siguiente manera:Registro de acción personalizado Wix C# no funciona

msiexec/i myMsi.msi/lvx myLog.log

Mi acción personalizada funciona bien, el único problema es que no lo obtener mi información de registro. El registro muestra que mi CA recibe una llamada, pero no la información de mi llamada session.Log().

Estoy usando Wix 3.5, .Net 4, VS 2010 y Windows 7 de 64 bits. Estoy llamando mi acción de la siguiente manera.

<Control Id="TestConnection" Type="PushButton" X="21" Y="177" Width="100" Height="17" Text="Test Connection"> 
    <Publish Event="DoAction" Value="TestConnection">1</Publish> 
</Control> 

Respuesta

23

por los documentos en DoAction ControlEvent, MsiProcessMessage (API detrás SESSION.LOG) no se pueden utilizar de una ControlEvent. Esto evita que su mensaje aparezca en el registro. Si necesita registrar alguna información de un ControlEvent (especialmente para la depuración), su mejor opción es un truco como cambiar el valor de una propiedad para contener su información de registro deseada.

+1

También session.Message se basa en el mismo MsiProcessMessage (y no Message como uno esperaría) – Jake

+2

Tiempos tristes ...... –

Cuestiones relacionadas