Hey all,
I'm trying to make a compiler extension that runs a custom action under the 
correct processor architecture (x86 or x64) of the MSI platform.

I've got a A) CompilerExtension that contains B) a wixlib which contains C) a 
.NET custom action.

A and C are a .NET assemblies built CPUAny
I've build an x86 and a x64 wixlib and added it to A in the hopes of using the 
Extension GetLibrary() as:

public override Library GetLibrary(TableDefinitionCollection tableDefinitions)
{
if(this.library == null)
{
  switch(this.CompilerExtension.Core.CurrentPlatform)
 {
    case Platform.X86:
           this.library = 
WixExtension.LoadLibraryHelper(Assembly.GetExecutingAssembly(), 
libraryResourceNamex86, tableDefinitions);
           break;
    case Platform.X64:
           this.library = 
WixExtension.LoadLibraryHelper(Assembly.GetExecutingAssembly(), 
libraryResourceNamex64, tableDefinitions);
           break;
   }
}
return this.library;
}

This approach fails since this.CompilerExtension.Core is null.

If I just load the x86 wixlib, everything works but the CA runs as a 32bit app.

What is the proper way to build an extension that is processor architecture 
"smart" for the wixlib's and CAs it has?




------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to