0

我遇到了一个错误,我无法弄清楚代码有什么问题。当我尝试创建一个对象时会发生这种情况(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 组件。" Source="Microsoft.VisualBasic" StackTrace: 在 Microsoft.VisualBasic.Interaction.CreateObject(String ProgId, String ServerName) 在 XMLshredapp.XMLShredApp.InitBulkLoad() 在 C:\ShredApp\XMLshredapp\XMLShredApp.vb:line 460 InnerException:

4

1 回答 1

0

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

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

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

于 2012-10-09T18:46:39.980 回答