2013-10-07 35 views
1

我有一个非常简单的应用程序连接到QuickBooks,运行客户查询,然后断开连接。在我的开发环境(Windows 7,x64)中,一切都按预期工作。当启动一个新的虚拟机(再次使用Windows 7,x64)时,我得到一个COM异常,HRESULT 80040154.这个错误已经在其他各种机器上重现,但我在其他各种机器上也取得了成功。我似乎无法在此找到共同点。我确保安装了QBFC,并且我的程序集都是针对x86平台编译的。HRESULT 80040154当使用QBFC

这是我的连接代码。当我尝试创建QBSessionManager的实例时,COM异常抛出。

QBSessionManager qbs = new QBSessionManager(); 
IMsgSetRequest requests = qbs.CreateMsgSetRequest("US", 8, 0); 
requests.Attributes.OnError = ENRqOnError.roeContinue; 

qbs.OpenConnection2("Application Name", "Application Name", ENConnectionType.ctLocalQBD); 
qbs.BeginSession(string.Empty, ENOpenMode.omDontCare); 

任何想法?这是我的第一个QB SDK应用程序,所以请让我知道如果我可能错过了一个明显的步骤。

+0

[如何修复COMException错误80040154](http://stackoverflow.com/q/7197506)。这有帮助吗? – dtb

+0

下面是另一个:[Error 80040154(Class not registered exception)](http://stackoverflow.com/q/4021796) – dtb

+0

QBFC安装程序为我们注册COM组件。我也可以使用Intuit SDK Tester实用程序成功连接到QuickBooks,所以我认为问题出在我身上,而不是由于COM组件的注册方式。感谢您的回应! –

回答

0

这是通过安装QBFC11解决的。尽管我的项目引用了QBFC12,但显然还必须安装QBFC11才能使连接成功。我会在我的最后对这个QuickBooks SDK缺乏经验。