I am convinced that I either do not understand how a custom action is to be called or 
the syntax that I am using is wrong. I have read the following

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/custom_action_sources.asp

it only references entry points from DLL's using C and C++. Can a custom action be 
used with C# and the CLR? Should I rewrite my custom action in C or C++?
Assuming that I can use a .NET assembly below I have an entry in the binary table that 
specifies the source of the DLL (basically the assembly). Then in <customactions> I 
add an entry with ConfigDB as the action which is the class contained in the assembly. 
The source argument is the name of the binary table element. The target is the name of 
the method that I want executed for the custom action. In <sequeneces> I specify a 
type so that it will be executed at install time and a target which is again the name 
of the class contained in the assembly. Isn't that right?

Kevin


-----Original Message-----
From: Burton, Kevin 
Sent: Tuesday, September 14, 2004 7:56 PM
To: 'James Geurts'
Cc: '[EMAIL PROTECTED]'
Subject: RE: [NAntC-Dev] Installing .msi package from <msi> could not
find DLL.


Let me rephrase the question. 

Does anyone have an example of a custom action that they would not mind "annotating" 
so I could use it as an example. I need to know the syntax of the <binaries>, 
<sequence>, and <customaction> tasks so that I know how to specify the location of the 
assembly when it is being packaged up, how I specify the location of the assembly on 
the target machine, how I specify the namespace and class that is to be used (is a 
default constructor assumed?), and finally how I specify the method to be executed 
along with the arguments. This would be a great help to me if someone already has a 
custom action that works. 

Thank you.

Kevin

-----Original Message-----
From: Burton, Kevin 
Sent: Friday, September 10, 2004 3:35 PM
To: 'James Geurts'
Cc: [EMAIL PROTECTED]
Subject: RE: [NAntC-Dev] Installing .msi package from <msi> could not
find DLL.


Yes and yes. The custom actions were written in C# so they require the dotnet runtime. 
I am testing the .msi package on my development machine so I know that dotnet is 
installed.

-----Original Message-----
From: James Geurts [mailto:[EMAIL PROTECTED]
Sent: Friday, September 10, 2004 3:20 PM
To: Burton, Kevin
Cc: [EMAIL PROTECTED]
Subject: RE: [NAntC-Dev] Installing .msi package from <msi> could not
find DLL.


Does the custom action require the dotnet runtime? if so, is it installed?


> I modified the custom action to put the DLL that houses the custom
> action in the [TARGETDIR] but I am still getting the same error.
>
> Any ideas?
>
> Kevin
>
> -----Original Message-----
> From: Burton, Kevin
> Sent: Tuesday, September 07, 2004 9:16 AM
> To: 'James Geurts'
> Cc: [EMAIL PROTECTED]
> Subject: RE: [NAntC-Dev] Installing .msi package from <msi> could not
> find DLL.
>
>
> I have attached the log output. I think the problem DLL is the DLL that
> contains my customactions. From the log file:
>
> Action start 9:00:53: ConfigureDB.
> Error 1723. There is a problem with this Windows Installer package. A
> DLL required for this install to complete could not be run. Contact
> your support personnel or package vendor.  Action ConfigureDB, entry:
> DoSQLUpdate, library: C:\WINNT\Installer\MSI51D2.tmp  Action ended
> 9:00:55: ConfigureDB. Return value 3.
> Action ended 9:00:55: INSTALL. Return value 3.
>
> But I am not sure how to fix the problem. Here are the applicable lines
> in the <msi> task.
>
>            <binaries>
>                <binary name="PPCINSTALLATION"
>                value="${build.dir}\InstallSupport\PPCInstallation.DLL"
>                />
>            </binaries>
>
>            <customactions>
>                <customaction action="ConfigureDB" type="1"
>                source="PPCINSTALLATION" target="DoSQLUpdate" />
>           </customactions>
>
>            <sequences>
>                <sequence type="installexecute" action="ConfigureDB"
>                value="750" condition="NOT Installed" />
>            </sequences>
>
> Thanks again.
>
> Kevin
>
> -----Original Message-----
> From: James Geurts [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, September 07, 2004 8:05 AM
> To: Burton, Kevin
> Cc: [EMAIL PROTECTED]
> Subject: Re: [NAntC-Dev] Installing .msi package from <msi> could not
> find DLL.
>
>
> Sure... use msiexec.exe to log the output.
>
>
>> The one .msi package that I was able to build when I run it I get a
>> diallog box:
>>
>> "There is a problem with this Windows Installer package.
>> A DLL required for this install to complete could not be
>> run. Contact your support personnel or package vendor."
>>
>> Any ideas on how to debug this error?
>>
>> Thank you.
>>
>>
>> Kevin
>>
>>
>> -------------------------------------------------------
>> This SF.Net email is sponsored by BEA Weblogic Workshop
>> FREE Java Enterprise J2EE developer tools!
>> Get your free copy of BEA WebLogic Workshop 8.1 today.
>> http://ads.osdn.com/?ad_idP47&alloc_id808&op�k
>> _______________________________________________
>> NAntContrib-Developer mailing list
>> [EMAIL PROTECTED]
>> https://lists.sourceforge.net/lists/listinfo/nantcontrib-developer





-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
NAntContrib-Developer mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nantcontrib-developer

Reply via email to