2010-01-29 99 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