Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

QuickBooks custom application deployment

Tags:

c#

quickbooks

I have created an application in c# that connects to our QB in order to post invoice ans such. I am ready to deploy this to out accountants so they can further test the application. This app works fine on my machine, however, when I build my project and take the exe to one of our accountants computers I get an error about "COM class factory, blah, blah Class not registered"

In the past that error would mean that I need to build the c# with x86 and not x64, but I did and still receive the error. I now believe that they do not have the QBFC12.dll registered on their computer like I do.

Is this the problem, and if so then do I have to manually register the dll or is their another way to get that dll on their machine?

like image 925
Richard S. Avatar asked Jul 05 '26 15:07

Richard S.


2 Answers

I found the answer finally.

  1. If you installed QBSDK, explore that folder and locate the Tools folder
  2. Under that you should find a Installers folder that has "QBFC12_0Installer.exe"
  3. Install the exe on the client machine.
  4. Try to run your program, if you encounter another error about "QBXML components are not installed, you will need to re-install QuickBooks and follow from step 1 again. This should get your application up and running for the client.

The person that came the closest and set me on the right track was MikeBr59 so I upvoted him, and posted this incase it helps anyone else.

Thanks,

like image 149
Richard S. Avatar answered Jul 07 '26 05:07

Richard S.


I think you have to copy it manually and register.

There is no other alternative.

Follow the below steps to copy and register it manually.

1.copy "QBFC12.dll" file into following 2 folders :

a.C:\Windows\System32\

b.C:\Windows\SysWOW64\

2.register the "QBFC12.dll" file using following steps :

open Command Prompt

cd C:\Windows\System32
regsvr32  QBFC12.dll

3.while running the project from visual studio force the platform target as 32 bit -> as the project hasbeen developed in 32 bit using following steps:

Right click on Project
Select Properties
Goto Build Options
Change  "Platform Target" from "ANY CPU" to "X86"

4.now run the Project.

like image 36
Sudhakar Tillapudi Avatar answered Jul 07 '26 04:07

Sudhakar Tillapudi



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!