Some notes on software development... RSS 2.0
# Thursday, 31 May 2012

If you are unfortunate enough to be working with VB6, VBScript, Classic ASP and COM components on a 64-bit machine you need to make sure your calling code is running the same process type as the COM component.

When you register a 32-bit COM component on a 64-bit machine it adds all the relevant bits to the HKEY_CLASSES_ROOT\Wow6432Node\CLSID node in the registry.
Here I have registered a 32-bit COM component and searched for it’s class id:


If the consuming client is running in a 64-bit process, when it tries to create the object it will fail because it will look in the default 64-bit area of the registry.

For my tests I have a COM component registered called HTestLibrary.

I have the following VBScript to create the object:

    Dim y
    Set y = CreateObject("HTestLibrary3.MyClass3")

    MsgBox y.GetTestString3()

Running the VBScript directly on 64-bit machine caused the following error:


By default the the script runner (cscript or wscript) is run under a 64-bit process so the COM registry lookup fails. To run the script under 32-bit process you need run the 32-bit version of cscript or wscript, this can be done by using the 32-bit version of CMD:



Classic ASP
The error you get when using Classic ASP in 64-bit mode is ‘Automation server can't create object’. To fix this you need to set the application pool for the website to run under 32-bit process so in the advanced settings for the application pool set the ‘Enable 32-Bit applications’ setting to true:


MSDN - COM Component Compatibility
SO - How do I run a VBScript in 32-bit mode on a 64-bit machine?

Thursday, 31 May 2012 09:25:09 (GMT Standard Time, UTC+00:00)  #    -
Classic ASP | COM | VB6
# Tuesday, 15 May 2012

After downloading the YouTube .NET client and referencing the assemblies in my test project it failed immediately with the following Could not load file or assembly Google.GData.Client….


Checking the warnings shows a differing version dependency for one of the newly referenced assemblies. To fix it you have to double click the warning message and Visual Studio will automatically add the correct binding redirection info to your app.config file:


or add the following binding configuration XML info yourself:

    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="Google.GData.Extensions" publicKeyToken="0B4C5DF2EBF20876" culture="neutral"/>
        <bindingRedirect oldVersion="" newVersion=""/>
        <assemblyIdentity name="Google.GData.Client" publicKeyToken="04A59CA9B0273830" culture="neutral"/>
        <bindingRedirect oldVersion="" newVersion=""/>

Tuesday, 15 May 2012 19:52:56 (GMT Standard Time, UTC+00:00)  #    -
# Wednesday, 25 April 2012

If you get a failure when trying to install a module from the gallery it may be caused by an out of date default gallery service URL. So if you see this type of error…


…check that the URL (Settings->Gallery) is:
If it isn’t then add new feed with the above URL and delete the old one and you should end up with something like this:
For a more detailed explanation see:
Wednesday, 25 April 2012 22:11:28 (GMT Standard Time, UTC+00:00)  #    -
Orchard CMS
# Friday, 30 March 2012
Friday, 30 March 2012 10:07:59 (GMT Standard Time, UTC+00:00)  #    -

Sign In
Total Posts: 116
This Year: 0
This Month: 0
This Week: 0
Comments: 36
About the author/Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2019
Hadrian Phillips

All Content © 2019, Hadrian Phillips
DasBlog theme 'Business' created by Christoph De Baene (delarou)