Pretty new to C#, desktop dev, and Visual Studio.
I wrote this small console application to update information in QuickBooks. I have it on a network drive so a few other people can run it. It runs fine on my computer, but I am getting the following error when trying to run it from theirs:
.Unhandled Exception: System.Runtime.InteropServices.COMException: Retrieving the COM class factory for component with CLSID {22E885D7-FB0B-49E3-B905-CCA6BD526B52} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
at ConsolidateInvoiceLineItems.Program.Main(String[] args) in X:\quickbooks\ConsolidateInvoiceLineIte,s\ConsolidateLineItems\Program.cs:line 124
Line 124 is the following:
var querySessionManager = new QBSessionManager();
Where it starts to initiate the connection to QB.
Things I've tried or looked into but not sure how to implement:
Copy Local = True
. I did this to all references which cleared up a number of other errors I was having:I tried to install the same version of the .NET Framework on their computer, but install said they already had it and wouldn't continue.
Installing the QuickBooks SDK. Haven't tried this yet, but going to give it a shot.
There are a number of questions related to this error. It seems to indicate that it is missing registry entry or potentially a 32-bit vs 64-bit discrepancy but we are both on 64-bit. Also, I don't know if the missing registry entry is just as simple and copying and pasting it in the necessary place. There isn't an installer either... not even sure how to make an installer. It is just an .EXE you can run. Like I said, pretty new to desktop dev. Been a web dev for a number of years.
Suggestions on how to resolve this issue?
User contributions licensed under CC BY-SA 3.0