I finally found a solution to this problem after days of searching for
it so I want to post my solution. I would reply to an existing thread
but Google Groups won't let me.
The problem I had was that ANY web setup project I developed in Visual
Studio .NET 2003 would fail with the text in the subject, "The
installer was interrupted before [product name] could be installed". I
even created a sample project and immediately built and ran it and it
failed. It turns out that I had a copy of a DLL that Visual Studio
packages into its .msi files and that copy was bad. How it got there I
couldn't tell you.
The file is supposed to be
C:\Program Files\Microsoft Visual Studio .NET
2003\Common7\Tools\Deployment\dpca.dll
with a file modification date of March 19, 2003 2:12 AM. The problem
is that on my computer that file had a modification date of July 7,
2004 12:50 PM and I had another file called "Copy of dpca.dll" in that
folder. I'm guessing I installed something that resulted in that copy
being made but I don't remember what it was. I just renamed the bad
dpca.dll file and renamed the copy to dpca.dll and my web setup
projects immediately started working again.
I figured out the problem with the help of a program called Qwerty.msi.
It works similarly to Orca but is more user friendly. From my msi
install logs I noticed the WEBCA_EvaluateURLsNoFail custom action
failing with lines similar to this:
MSI (c) (3C:70) [10:25:50:117]: Doing action: WEBCA_EvaluateURLsNoFail
Action start 10:25:50: WEBCA_EvaluateURLsNoFail.
MSI (c) (3C:B4) [10:25:50:117]: Invoking remote custom action. DLL:
C:\DOCUME~1\HUMPHR~1\LOCALS~1\Temp\MSI73.tmp, Entrypoint:
EvaluateURLsNoFail
MSI (c) (3C:B4) [10:25:50:336]: Leaked MSIHANDLE (4) of type 790540 for
thread 3476
MSI (c) (3C:B4) [10:25:50:336]: Note: 1: 2769 2:
WEBCA_EvaluateURLsNoFail 3: 1
MSI (c) (3C:B4) [10:25:50:336]: Note: 1: 2262 2: Error 3: -2147287038
DEBUG: Error 2769: Custom Action WEBCA_EvaluateURLsNoFail did not
close 1 MSIHANDLEs.
The installer has encountered an unexpected error installing this
package. This may indicate a problem with this package. The error code
is 2769. The arguments are: WEBCA_EvaluateURLsNoFail, 1,
Action ended 10:25:50: WEBCA_EvaluateURLsNoFail. Return value 3.
Using the Qwerty.msi tool I discovered the actual routine being run,
EvaluateURLsNoFail, was in a DLL named MSVBDPCADLL. There was no DLL
named that on my computer but with help from another site I discovered
that the DLL being referenced was really dpca.dll.
The Qwerty.msi tool I found from a site recommended by another person
who has investigated this problem:
http://www.installsite.org/pages/en/msi/authoring.htm . There are more
tools than that on there though. This is the direct site for the tool
I used, http://www.qwerty-msi.com .
I hope all of this can be of help to others.
|