Thanks Craig,

I am including the list on this reply so that they have a record of this
behavior...

Jim

-----Original Message-----
From: Craig Neuwirt [mailto:[EMAIL PROTECTED] 
Sent: Thursday, March 11, 2004 2:38 PM
To: James Geurts
Cc: [EMAIL PROTECTED]
Subject: NAnt conflict with NAntContrib MSI Task

Hello James,
 
   I identified the problem described in the previous mail.  Just so you
know, the latest version of NAnt can possibly cause existing NAnt builds
that use NAntContrib to fail.  In my situation I had a target that loaded
the NAntContrib using the following

 
<loadtasks path="${contrib.dir}\nantcontrib\bin"/>
 
Prior to the recent changes in NAnt, this would have loaded the tasks from
all dll that ended with .Tasks.  However, the new build does not filter the
dll so all of them are loaded.   One such dll is
Interop.WindowsInstaller.dll.  Unforunately, it contains an interface names
"WindowsInstaller.Installer".   When the msi task is executing and it gets
to the InstallerDatabase constructor
 
        public InstallerDatabase(string path) {
            _archivePath = path;
            _installer =
Type.GetTypeFromProgID("WindowsInstaller.Installer");
            _installerInstance = Activator.CreateInstance(_installer);
        }
 
the Type.GetTypeFromProgID("WindowsInstaller.Installer") actually returns
the type representing
WindowsInstaller.Installer in the Interop.WindowsInstaller.dll (This seems
to be a .Net phenomena).
As a result the Activator complains about creating an instance of an
interface.  I wrote a sample
program to confirm this behavior.
 
My temp solution is to limit the loadtasks to jus the *Tasks.dll
 
   <loadtasks>
      <fileset basedir="${contrib.dir}\nantcontrib\bin">
         <includes name="**Tasks*.dll"/>
    </fileset>
 </loadtasks>

craig
 
 

        -----Original Message----- 
        From: James Geurts [mailto:[EMAIL PROTECTED] 
        Sent: Wed 3/10/2004 8:41 AM 
        To: Craig Neuwirt 
        Cc: 
        Subject: RE: MSI Task creating Virtual Directory
        
        

        Well, if there is anything that you get stuck on, let me know.  I
figure
        that if one person gets hung up on it, more probably will, so I try
to add
        to the wiki as people need help.
        
        Thanks
        
        Jim
        
        -----Original Message-----
        From: Craig Neuwirt [mailto:[EMAIL PROTECTED]
        Sent: Wednesday, March 10, 2004 9:12 AM
        To: James Geurts
        Subject: RE: MSI Task creating Virtual Directory
        
        Thanks so much James.  The msi creation is the last part of my build
process
        which is fully nant, nunit, and CruiseControl.Net driven.  I am not
an
        expert on the Windows Installer so I have really struggled on how to
use the
        MSI task properly to create a web project with custom user
interfaces and
        actions.
        
        Craig
        
                -----Original Message-----
                From: James Geurts [mailto:[EMAIL PROTECTED]
                Sent: Tue 3/9/2004 7:25 PM
                To: 'Gert Driesen'; 'Craig Neuwirt'; 'Joseph Kunjoonju'
                Cc:
                Subject: RE: MSI Task creating Virtual Directory
               
               
        
                Thanks for forwarding this Gert!
               
                The sample build script from the Wiki is probably a little
too old.
        I will
                update it to work with the latest code in cvs, once I get my
        computer back
                to a working state (just re-formatted).  I have included the
dll and
        updated
                the url in the wiki to point to a valid file.  It happens to
be the
        same dll
                that Microsoft uses with their web installs.  If you have
any other
                questions, feel free to email me directly, or indirectly via
the
                nantcontrib-developer list (I tend to monitor that one the
most).
               
                Jim
               
               
                -----Original Message-----
                From: Gert Driesen [mailto:[EMAIL PROTECTED]
                Sent: Tuesday, March 09, 2004 1:56 PM
                To: Craig Neuwirt
                Cc: James Geurts
                Subject: Re: MSI Task creating Virtual Directory
               
                What sample build are you referring to ?
               
                I  copied James Geurts in on this conversation as he's the
original
        author
                of the msi/msm tasks (if I'm not mistaken), and a msi wizard
:-)
               
                Gert
               
                ----- Original Message -----
                From: "Craig Neuwirt" <[EMAIL PROTECTED]>
                To: <[EMAIL PROTECTED]>
                Sent: Tuesday, March 09, 2004 7:40 PM
                Subject: MSI Task creating Virtual Directory
               
               
                > Sorry to bother you.  I am using the NantContrib MSITask
to
                >
                > build an msi using NAnt.  The sample build references a
                >
                > MSVBDPCA.DLL to be able to create virtual directories.
                >
                > However, I have made an exhaustive search for this dll
with
                >
                > no success.  I was wondering if you know how to obtain
this
                >
                > dll.
                >
                >
                >
                > Thanks,
                >
                >   Craig Neuwirt
                >
                >
               
        
        



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
NAntContrib-Developer mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nantcontrib-developer

Reply via email to