2010-01-29 102 views
1

我想在VBscript中创建ADODB.Stream对象。这是函数:无法创建对象:ADODB.Stream

Function ByteArray2Text(varByteArray) 
'Convert byte array into a string with ADODB.Stream 
'Data should be real plain text because binary data will be mangled 
Dim byt 
Const adTypeText = 2 
Const adTypeBinary = 1 
    Set byt = CreateObject("ADODB.Stream") 
    byt.Type = adTypeBinary 
    byt.Open 
    byt.Write varByteArray 
    byt.Position = 0 
    byt.Type = adTypeText 
    byt.CharSet = "us-ascii" 
    ByteArray2Text = byt.ReadText 
    byt.Close 
    Set byt = Nothing 
End Function 

当我尝试运行这个功能我得到的错误:

Microsoft VBScript runtime error: ActiveX component can't create object: 'ADODB.Stream' 

我需要做什么,创建这个ADODB.Stream对象?

+1

可能感兴趣的:禁用流对象http://support.microsoft .com/kb/870669 – Fionnuala 2010-01-29 13:35:43

回答

0

确保:

  1. 河网您的计算机上组件退出。
  2. 如果它存在,在运行对话框中输入:

    REGSVR32“路径\ stream_file_here.dll”

机会是汽部分文件在注册表中被注销,你不能创建一个对象。

+0

我在哪里可以找到“stream_file_here.dll”? – user261810 2010-01-29 13:27:01

+0

好吧,您将不得不查看相关文档或者做一些Google搜索。谢谢 – Sarfraz 2010-01-29 13:31:19

+0

stream_file_here.dll部分非常有趣:-)) – wqw 2010-01-29 22:05:39

0

请确保您有安装MDAC

+0

是的,我有。 mdac 2.8 – user261810 2010-01-29 13:33:00

0

尝试MDAC像马克说......但你也可以尝试的Microsoft Jet 4.0

您也可以registrate这些DLL:

REGSVR32“C:\ Arquivos德计划成\ Arquivos Comuns \ SYSTEM \ OLE DB \ sqloledb.dll “

REGSVR32 ”C:\ Arquivos德计划成\ Arquivos Comuns \ SYSTEM \ OLE DB \的Oledb32.dll“

REGSVR32” C:\ Arquivos德计划成\ Arquivos Comuns \ SYSTEM \ OLE db \ Msdasql.dll“

REGSVR32 “C:\ Arquivos德计划成\ Arquivos Comuns \ SYSTEM \ MSADC \ Msadce.dll”

他们与ADODB关系

+0

我使用的是Windows7,因此我无法安装Microsoft Jet 4.0。这个版本无效! – user261810 2010-01-29 14:31:18