3

If I want to create the registry key

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MyApp

with the string value

EventMessageFile : C:\Path\To\File.dll

how do I define this in my WiX 3.0 WXS file? Examples of what the XML should look like is much appreciated.

5 Answers 5

5

You seem to want to create an event log source. If that is the case, you should take a look at the <EventSource> element in the util extension.

Sign up to request clarification or add additional context in comments.

Comments

1

Check out this page. An example would be:

<registry action="write" 
 root"HKLM" key="SYSTEM\CurrentControlSet\Services\Eventlog\Application\MyApp"
 type="string" value="EventMessageFile : C:\Path\To\File.dll" />

Comments

1

I went with this:

<Component Id="EventLogRegKeys" Guid="{my guid}">
    <RegistryKey Id="Registry_EventLog" Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\Eventlog\Application\MyApp" Action="create">
        <RegistryValue Id="Registry_EventLog_EventSourceDll" Action="write" KeyPath="yes" Name="EventMessageFile" Type="string" Value="C:\Path\To\File.dll" />
    </RegistryKey>  
</Component>

Comments

1

It would be better to refer to File.dll using file reference syntax, to ensure that the actual path it's installed to is used. Use [#filekey], where filekey is the Id of the File element describing the file.

Comments

0

Use the following under DirectoryRef --> Directory...

<Component Id="RegisterAddReferencesTab32" Guid="D9D01248-8F19-45FC-B807-093CD6765A60">

  <RegistryValue Action="write" Id="RegInstallDir32" Key="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MyApp" Root="HKLM" Type="string" Value="C:\Path\To\File.dll" />

</Component>

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.