Minor install problem with 1.11.0 RC

Topics: Bugs
Aug 19, 2008 at 1:29 AM
When running on x64 Vista, the external UI crashes on load. Specifically:
  DocProjectEnvironment.Initialize(host);
fails with:
  InvalidOperationException - The DocProject Add-In could not locate the InstallPath registry value.
(BTW, this results in process termination, not a call to Application_ThreadException, possibly because Application.Run has not yet been called).

The problem is the installer wrapper: the .exe available under "Releases" is a 32-bit exe that executes the managed installer still as a 32-bit process, so the registry entries placed by the (32-bit) installer are reflected under the Wow6432Node, so they're not found by the (CPU-independent) DocProject.exe.

Workaround: download the source, under DaveSexton.DocProject.ExternalUI, change the Project Properties -> Build -> Platform target from "Any CPU" to "x86". Build just that project, and copy the resulting exe over the installed DocProject.exe. This will force DocProject to run as a 32-bit process, so it will see the registry reflection.

Long-term solution: change the MSI wrapper to support 64-bit.
Coordinator
Aug 19, 2008 at 4:27 AM

Hi Steve,

Thanks for reporting this issue and for providing a solution.

Here's a bug report that someone else created for the same issue: 

http://www.codeplex.com/DocProject/WorkItem/View.aspx?WorkItemId=17410

Unfortunately the MSI wrapper executable isn't something that I've built - it's generated by the IExpress utility.  I'm not sure if there's a way to generate a CPU-independent version, although it's doubtful.

Would it work if you just extracted the contents and executed the VS 2005 bootstrapper executable yourself?  Worst-case scenario, executing the .MSI file directly should fix the problem, right?

    DocProject-1110RC.exe /c

- Dave

Aug 22, 2008 at 11:50 AM
Dave -

I see. Yes, executing the MSI directly should work fine.

       -Steve

P.S. Sorry I didn't check the bug database before posting!
Coordinator
Aug 22, 2008 at 3:25 PM
Hi Steve,

In that case I'll probably just continue to use IExpress and make a note for x64 users in the release notes that they must extract the contents and run the internal .exe or .msi directly.

Note that the piaredist is only required if you don't have VS standard or higher already installed; i.e., for VS Express users.

Thanks,
Dave