Windows 7 installation issues

Add-in Express™ Support Service
That's what is more important than anything else

Windows 7 installation issues
 
cocoder




Posts: 34
Joined: 2010-07-07
I have three add-ins. All three install fine on my Win7 test machine. But when my client tries to install on hers, one of the three does not install correctly. Here's the log for the one that doesn't install:

Startup directory: C:\Program Files (x86)\OPDEC Tools\Task Review 2011\
Loader version: 6.0.3043
------------------
12:55:20 2028 3864 Start.
12:55:20 2028 3864 Reading the registry key 'HKEY_CLASSES_ROOT\CLSID\{4A0E6A4F-FC2A-4EDD-B259-BCF9B2381592}'
12:55:20 2028 3864 Success. The registry key 'HKEY_CLASSES_ROOT\CLSID\{4A0E6A4F-FC2A-4EDD-B259-BCF9B2381592}' is closed.
12:55:20 2028 3864 Converting the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID from string.
12:55:20 2028 3864 Success.
12:55:20 2028 3864 Attempting to get the class object by the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID.
12:55:20 2028 3864 Success.
12:55:20 2028 3864 Creating a new instance of the add-in loader.
12:55:20 2028 3864 Success.
12:55:20 2028 3864 Loading the configuration from the system registry.
12:55:20 2028 3864 Getting the latest CLR version.
12:55:20 2028 3864 The latest CLR version is 'v2.0.50727'.
12:55:20 2028 3864 The configuration has been loaded successfully.
12:55:20 2028 3864 Runtime version: v2.0.50727.
12:55:20 2028 3864 Assembly name: Task Review 2011, PublicKeyToken=2D6793F0A619FF9D.
12:55:20 2028 3864 Class name: TaskReview2011.AddinModule.
12:55:20 2028 3864 Attempting to create a new instance of the managed add-in class: CLR - v2.0.50727
12:55:20 2028 3864 Loading CLR: v2.0.50727.
12:55:20 2028 3864 The CLR v2.0.50727 has been initialized successfully.
12:55:20 2028 3864 Creating a new domain setup.
12:55:20 2028 3864 Success.
12:55:20 2028 3864 Getting the add-in directory.
12:55:20 2028 3864 Success. The directory is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\'
12:55:20 2028 3864 The configuration file is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\app.config'
12:55:20 2028 3864 The 'shadow copy' is enabled.
12:55:20 2028 3864 Creating a new application domain.
12:55:20 2028 3864 Error code: 0x8013150c
12:57:52 2028 3864 Starting the add-in registration process.
12:57:52 2028 3864 Getting the latest CLR version.
12:57:52 2028 3864 The latest CLR version is 'v2.0.50727'.
12:57:52 2028 3864 Creating a new domain setup.
12:57:52 2028 3864 Success.
12:57:52 2028 3864 Getting the add-in directory.
12:57:52 2028 3864 Success. The directory is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\'
12:57:52 2028 3864 The configuration file is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\app.config'
12:57:52 2028 3864 The 'shadow copy' is disabled.
12:57:52 2028 3864 Creating a new application domain.
12:57:52 2028 3864 Error code: 0x8013150c

------------------------------------------
The add-in is being installed for all users and the person doing the installing has admin rights.
Posted 25 Oct, 2010 16:19:04 Top
Andrei Smolin


Add-in Express team


Posts: 16970
Joined: 2006-05-11
Hi cocoder,

First, please replace Loader\adxloader*.dll in your project with {Add-in Express}\Redistributables\adxloader*.dll.

Then please look for that HRESULT in C# Cookbook. Recipe 5.8 HRESULT-Exception Mapping.

And if you intialize any complex-type variables in the constructor of the add-in module or even on the module level, I suggest that you mode such initialization to AddinInitialize or AddinStartupComplete.

Regards from Belarus (GMT+2),

Andrei Smolin
Add-in Express Team Leader
Posted 26 Oct, 2010 01:38:27 Top
cocoder




Posts: 34
Joined: 2010-07-07
OK, I did the first thing
The error code is referring to a SerializationException...not sure exactly what that means
The only line of code in the constructor is InitializeComponent()


I rebuilt the setup project and tried again with the same results...the add-in installs but doesn't run. The Commandbar button doesn't show up (the commandbar buttons for the other two add-ins do). In the registry, the load behavior is still set to 3. Wouldn't it change to 2 if there was an error on load?

Here are the two log file outputs:

adxloader
Startup directory: C:\Program Files (x86)\OPDEC Tools\Task Review 2011\
Loader version: 6.0.3043
------------------
10:40:27 2452 4492 Start.
10:40:27 2452 4492 Reading the registry key 'HKEY_CLASSES_ROOT\CLSID\{4A0E6A4F-FC2A-4EDD-B259-BCF9B2381592}'
10:40:27 2452 4492 Success. The registry key 'HKEY_CLASSES_ROOT\CLSID\{4A0E6A4F-FC2A-4EDD-B259-BCF9B2381592}' is closed.
10:40:27 2452 4492 Converting the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID from string.
10:40:27 2452 4492 Success.
10:40:27 2452 4492 Attempting to get the class object by the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID.
10:40:27 2452 4492 Success.
10:40:27 2452 4492 Creating a new instance of the add-in loader.
10:40:27 2452 4492 Success.
10:40:27 2452 4492 Loading the configuration from the system registry.
10:40:27 2452 4492 Getting the latest CLR version.
10:40:27 2452 4492 The latest CLR version is 'v2.0.50727'.
10:40:27 2452 4492 The configuration has been loaded successfully.
10:40:27 2452 4492 Runtime version: v2.0.50727.
10:40:27 2452 4492 Assembly name: Task Review 2011, PublicKeyToken=2D6793F0A619FF9D.
10:40:27 2452 4492 Class name: TaskReview2011.AddinModule.
10:40:27 2452 4492 Attempting to create a new instance of the managed add-in class: CLR - v2.0.50727
10:40:27 2452 4492 Loading CLR: v2.0.50727.
10:40:27 2452 4492 The CLR v2.0.50727 has been initialized successfully.
10:40:27 2452 4492 Creating a new domain setup.
10:40:27 2452 4492 Success.
10:40:27 2452 4492 Getting the add-in directory.
10:40:27 2452 4492 Success. The directory is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\'
10:40:27 2452 4492 The configuration file is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\app.config'
10:40:27 2452 4492 The 'shadow copy' is enabled.
10:40:27 2452 4492 Creating a new application domain.
10:40:27 2452 4492 Error code: 0x8013150c

adxregistrator
Add-in Express Registrator Log File: 10/26/2010 10:38:24

Installation directory: C:\Program Files (x86)\OPDEC Tools\Task Review 2011\
Registrator version: 6.0.3043.0
-------------------------------
10:38:24 Starting the add-in unregistration process.
10:38:24 Loading mscoree.dll
10:38:24 Success.
10:38:24 .NET Framework installation directory:
10:38:24 The latest version of .NET Framework: 'v2.0.50727'
10:38:24 Loading CLR: v2.0.50727.
10:38:24 The CLR v2.0.50727 has been initialized successfully.
10:38:24 Creating a new domain setup.
10:38:24 Success.
10:38:24 Getting the add-in directory.
10:38:24 Success. The directory is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\'
10:38:24 The configuration file is '(null)'
10:38:24 The 'shadow copy' is disabled.
10:38:24 Creating a new application domain.
10:38:24 Success.
10:38:24 Getting the base directory for the domain.
10:38:24 Success. The directory is 'C:\Program Files (x86)\OPDEC Tools\Task Review 2011\'.
10:38:24 Searching for the Add-in Express core library.
10:38:24 Success. The 'AddinExpress.MSO.2005.dll' file is found.
10:38:24 Creating an instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
10:38:24 Assembly identity is 'AddinExpress.MSO.2005'.
10:38:24 Success.
10:38:24 Unwrapping the instance of the 'AddinExpress.Deployment.ADXRegistrator' class.
10:38:24 Success.
10:38:24 Calling the managed registration procedure.
10:38:24 Success.
10:38:24 The add-in registration process is completed with HRESULT = 0.
Posted 26 Oct, 2010 15:09:38 Top
Andrei Smolin


Add-in Express team


Posts: 16970
Joined: 2006-05-11
Hi cocoder,

Please check if you intialize any complex-type variables on the module level; that code is executed before the constructor is run. When the module is created during the registration process, that code may cause the problem.

Regards from Belarus (GMT+2),

Andrei Smolin
Add-in Express Team Leader
Posted 27 Oct, 2010 09:26:00 Top
cocoder




Posts: 34
Joined: 2010-07-07
OK, I'm afraid I'm not quite sure what "intialize any complex-type variables on the module level" means. So I need a little more guidance

The structure of the add-in is exactly the same as the other two that are working but each one calls a different dll that is written in VB6 (these are basically just .net wrappers for the VB6 dlls. They consist only of the commandbar/button/immage list to put the button in Project and call the dll)

Also, we've not determined that it's not just a Win7 problem but that it is also happening on some XP machines.
Posted 27 Oct, 2010 10:55:00 Top
Eugene Astafiev


Add-in Express team


Posts: 8540
Joined: 2007-07-25
Hi Cocoder,

Please download and install a fresh build of Add-in Express. Also please don't forget to replace the adxloader[64].dll in the Loader folder of your project with a new one (see the Redistribuatbles folder). Could please show new log files to me? Do you get the same error?
.NET, Extended MAPI, Windows Phone & RT
Posted 27 Oct, 2010 11:21:05 Top
cocoder




Posts: 34
Joined: 2010-07-07
OK, I'll give that a try. The two add-ins that are working, though, were built with the same version of Add-in Express and using the same adxloader[64].dll as the non working one.

Yes, same error:

Add-in Express Loader Log File: 10/27/2010 08:25:57

Startup directory: C:\Program Files\OPDEC Tools\Network Trace 2011\
Loader version: 6.0.3043
------------------
08:25:57 2328 428 Start.
08:25:57 2328 428 Reading the registry key 'HKEY_CLASSES_ROOT\CLSID\{2158CED9-6A56-439D-B00C-19B2C7B753EC}'
08:25:57 2328 428 Success. The registry key 'HKEY_CLASSES_ROOT\CLSID\{2158CED9-6A56-439D-B00C-19B2C7B753EC}' is closed.
08:25:57 2328 428 Converting the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID from string.
08:25:57 2328 428 Success.
08:25:57 2328 428 Attempting to get the class object by the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID.
08:25:57 2328 428 Success.
08:25:57 2328 428 Creating a new instance of the add-in loader.
08:25:57 2328 428 Success.
08:25:57 2328 428 Loading the configuration from the system registry.
08:25:57 2328 428 Getting the latest CLR version.
08:25:57 2328 428 The latest CLR version is 'v2.0.50727'.
08:25:57 2328 428 The configuration has been loaded successfully.
08:25:57 2328 428 Runtime version: v2.0.50727.
08:25:57 2328 428 Assembly name: OPDEC Network Trace 2011, PublicKeyToken=91BCB58B5FC151B5.
08:25:57 2328 428 Class name: NetworkTrace2011.AddinModule.
08:25:57 2328 428 Attempting to create a new instance of the managed add-in class: CLR - v2.0.50727
08:25:57 2328 428 Loading CLR: v2.0.50727.
08:25:57 2328 428 Calling GetCLRMetaHost method.
08:25:57 2328 428 Failed.
08:25:57 2328 428 The loader will try to use the old Framework API.
08:25:57 2328 428 The CLR v2.0.50727 has been initialized successfully.
08:25:57 2328 428 Creating a new domain setup.
08:25:57 2328 428 Success.
08:25:57 2328 428 Getting the add-in directory.
08:25:57 2328 428 Success. The directory is 'C:\Program Files\OPDEC Tools\Network Trace 2011\'
08:25:57 2328 428 The configuration file is 'C:\Program Files\OPDEC Tools\Network Trace 2011\app.config'
08:25:57 2328 428 The 'shadow copy' is enabled.
08:25:57 2328 428 Creating a new application domain.
08:25:57 2328 428 Error code: 0x8013150c
Posted 27 Oct, 2010 11:42:04 Top
Andrei Smolin


Add-in Express team


Posts: 16970
Joined: 2006-05-11
Hi cocoder,

What I meant is initilalizing variables in an event.

I. (wrong)
    public class AddinModule : AddinExpress.MSO.ADXAddinModule
    {
        public AddinModule()
        {
            //...            
        }

        MyType myVariable = new MyType();         
    }


II. (correct)
    public class AddinModule : AddinExpress.MSO.ADXAddinModule
    {
        public AddinModule()
        {
            //...            
        }

        MyType myVariable = null;         

        private void AddinModule_AddinInitialize(object sender, EventArgs e)
        {
             myVariable = new MyType();
        }
    }


Make sure you intialize your variables in AddinIntialize or AddinStartupComplete.

Regards from Belarus (GMT+2),

Andrei Smolin
Add-in Express Team Leader
Posted 27 Oct, 2010 11:52:00 Top
cocoder




Posts: 34
Joined: 2010-07-07
OK, I get it :)

I'm declaring/initializing my variable in the click event of the command button. (in all three tools)

Dim TaskReview_AddIn As New TaskReview2011.TaskReview

TaskReview_AddIn.Show()
Posted 27 Oct, 2010 12:04:26 Top
Eugene Astafiev


Add-in Express team


Posts: 8540
Joined: 2007-07-25
Hi Cocoder,

Does a new build of Add-in Express help? Are you able to reproduce the issue now? Could you provide me with new log files?
.NET, Extended MAPI, Windows Phone & RT
Posted 28 Oct, 2010 06:16:56 Top