Problems with Installed Software using CCW to .NET Component
Good afternoon,
I work for an ISV which develops a solution for the financial markets written in a mix of Visual Basic 6.0 and C# 1.1. We make fairly extensive use of COM-callable wrappers to permit the VB6 application to call into our own .NET assemblies.
I recently downloaded and installed Windows Vista Ultimate build 5536 pre-RC1 on one of my workstations and installed our product afterwards. The first difference I noticed was that when attempting to launch the application a Windows Installer dialog appears and churns for a minute or so. I enabled Windows Installer logged in Group Policy but the Msi.log file has not materialized so I am not aware of what it is attempting to accomplish. On one occasion Windows Installer insisted that Windows Defender was using the same files and would have to be closed in order to avoid a reboot.
After the Windows Installer dialog is complete the login dialog for our application appears, however any attempt to proceed is halted by an automation run time error. Using the undocumented VB6 function Erl() I was able to isolate the cause to a single line of VB6 code which is attempting to instantiate a GACed .NET 1.1 class through a COM-callable wrapper using early binding and the New operator.
I have confirmed that the .NET assembly and this class specifically are registered correctly by the installer and appear in the registry. I was also able to develop a quick VB6 applet on the same development machine from which our application is compiled and packaged which does nothing more than attempt to instantiate the same object through both early and late binding and it succeeds in both cases.
I'm really confused as to why our application is misbehaving under Windows Vista and I am not sure where to go from here. Given the proximity of time to the release of Vista I don't want to just assume that this is a beta problem and wait. If anyone has any resources I can research or comments I would appreciate it.
Thanks,
Justin Spindler

