无法创建Active X对象

时间:2012-10-09 16:42:41

标签: xml vb.net bulk-load

我遇到了错误,我无法弄清楚代码有什么问题。它在我尝试创建对象时发生(objbl = CreateObject(“SQLXMLBulkLoad.SQLXMLBulkload.4.0”))。

我错过了什么吗?

Try
            objbl = CreateObject("SQLXMLBulkLoad.SQLXMLBulkload.4.0") // error happens on this line.
            objbl.ConnectionString = ReadVariables("ConnectionString")

            Console.WriteLine(objbl.connectionstring.ToString)

            objbl.ErrorLogFile = workingdirectory & "\error.log"
            objbl.TempFilePath = workingdirectory & "" 'workingdirectory
            objbl.CheckConstraints = True
            objbl.KeepIdentity = False
            objbl.Transaction = True

            'objbl()

        Catch ex As System.Exception
            Console.WriteLine("Error initializing SQL Bulk load object." & Chr(13) & Chr(10) & ex.ToString)
            WritetxtToLog("Error initializing SQL Bulk load object." & Chr(13) & Chr(10) & ex.ToString, 1)
            Exit Sub
        End Try

这是异常错误:

发现了System.Exception   Message =“无法创建ActiveX组件。”   来源= “Microsoft.VisualBasic程序”   堆栈跟踪:        at Microsoft.VisualBasic.Interaction.CreateObject(String ProgId,String ServerName)        at C:\ ShredApp \ XMLshredapp \ XMLShredApp.vb中的XMLshredapp.XMLShredApp.InitBulkLoad():第460行   InnerException:

1 个答案:

答案 0 :(得分:0)

那些错误“ActiveX无法创建对象”通常意味着您提供给CreateObject的ProgID未知。

换句话说,如果ProgID(SQLXMLBulkLoad.SQLXMLBulkload.4.0)输入错误或属于未在注册表中注册的DLL,则会出现此错误。

您可以在运行此应用程序的计算机上搜索注册表,并查看注册表中是否存在SQLXMLBulkLoad吗?如果没有,您需要找到该DLL并注册它(使用regsvr32