Hi people,
I'm asking for my .dll files to be ngened during install, at priority 0,
which I understand should take place synchronously, while the install
progress bar increments. But I must be doing something wrong because
instead, they get queued for ngen at priority 3.
To my candle and light commands, I added the option:
-ext WixNetFxExtension
To my wxs file's Wix tag, I added the attribute:
xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension"
In the wxs file, my files look like:
<File Id='Controls.dll'
Name='Controls.dll'
DiskId='1'
Source='..\bin\Controls.dll'>
<netfx:NativeImage Id="NGenControls.dll"
Priority="0"
Platform="32bit"
/>
</File>
After install, running 'ngen display' on the installed dll files shows
the following:
> ngen display Controls.dll
Microsoft (R) CLR Native Image Generator - Version 2.0.50727.3053
Copyright (c) Microsoft Corporation. All rights reserved.
NGEN Roots:
C:\Program Files\Resolver One\bin\Controls.dll (StatusPending) (Pri 3)
Native Images:
Controls, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Controls, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Controls, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Adding LOGVERBOSE=1 to our command line shows the following entries in
our logfile for each .dll file:
ExecNetFx: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ngen.exe
install "C:\Program Files\Resolver One\bin\Controls.dll"
ExecNetFx: Microsoft (R) CLR Native Image Generator - Version
2.0.50727.3053
ExecNetFx: Copyright (c) Microsoft Corporation. All rights reserved.
ExecNetFx: Installing assembly C:\Program Files\Resolver
One\bin\Controls.dll
ExecNetFx: All compilation targets are up to date.
If I copy the ngen command from the logfile above, and run it manually:
> C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ngen.exe install "C:\Program
> Files\Resolver One\bin\Controls.dll"
Then the file is ngen'ed immediately and (as far as I can see)
synchronously.
Does anyone have any idea what I'm doing wrong that the same command
executed by the msi install doesn't seem to work?
Changing the <File> tag to request priority 1, 2 or 3 does change the
command visible in the logfile, by adding a "/queue:1" (or 2 or 3)
parameter, and the .dll files are then queued at the requested priority.
So the <File> tag priority attribute does seem to be being recognised
and acted on, except when priority=0.
Many thanks for any suggestions,
Jonathan
--
Jonathan Hartley Made of meat. http://tartley.com
[email protected] +44 7737 062 225 twitter/skype: tartley
------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users