使用ADO对IntraWeb的CoInitialize的错误(Coinitialize error

2019-09-19 03:58发布

已经要求对邪恶的交流,但一如既往,这是没有任何帮助。 今天我有这个问题:

当使用IntraWeb的创建一个独立的Web应用程序,当我尝试从我的浏览器应用程序测试出一个会议上,我得到这个例外在IDE中:

在$ 7C812A6B第一次机会异常。 有消息Exception类EOleSysError“的CoInitialize没有被调用”。 过程WebContactManager.exe(1112)

如果我点击IDE例外对话框中的“继续”,浏览器本身只是表明:

200 OK

......而不是我的主窗体上的控件。

似乎这个错误时不我与其他数据库组件如的dbExpress或BDE替代ADO发生。

这是什么错误告诉我,我该如何解决?

(注意:我使用的股票“VCL为Web”哪来内置与D2007 IntraWeb的组件)。

预先感谢任何及所有的帮助!

Answer 1:

该“办法”中提供你所引用的链接基本上是错误的,或者至少不完全。 只有通过设置ServerController.ComInitialization到ciMultiThreaded真IW将出示担保每个线程将获得COM正确初始化。 (例如想想AJAX回调)

如果你创建自己的定制主题,那么你将不得不虽然调用CoInitialize为你自己的线程 - 因为IntraWeb的不知道您的自定义主题。



Answer 2:

刚刚找到一个答案在这里 :

我发现了一个更好的解决方案作为整个问题使用IntraWeb的起源,我更希望得到的IntraWeb初始化COM我。 这很好地梳理了出来。

当使用MS SQL dbExpress驱动程序或驱动程序ADO与IntraWeb的,你必须在ServerController为“ciMultiThreaded”设置ComInitialization属性。

这将消除“的CoInitialize没有被调用”的错误。



文章来源: Coinitialize error on IntraWeb using ADO