簡體   English   中英

通過VBScript使用ADOX

[英]Using ADOX via VBScript

您不應該能夠通過VBScript實現ADOX庫嗎? 下面的代碼可以通過Windows 7,Office 2010 32位上的Access 2010完美運行,但不能通過VBScript運行。 ADOX不只是另一個COM對象,例如FileSystemObject嗎?

Dim objADOX

Set objADOX = CreateObject("ADOX.Catalog")
objADOX.ActiveConnection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Zamdrist\Desktop\Work\Scripts\Shell.accdb"
MsgBox objADOX.Tables.Count

抱歉,我應該指出,VBScript抱怨該提供程序不存在。 奇怪的是,實際上我確實安裝了Access 2010。

這不只是為了給我一個極大的幫助而已,而是一個答案。 我一直與只能使用32位的提供程序進行合作,因此我總是將隨附的代碼添加到所有腳本中。 這樣,執行代碼的機器是32位還是64位都沒有關系。

'Check for 64 bit and run as 32 bit if needed.
'On error resume next

Set oFso = CreateObject("Scripting.FileSystemObject")
Set oWs = CreateObject("WScript.Shell")

windowsdir = oWs.ExpandEnvironmentStrings("%windir%")

If InStr(LCase(WScript.FullName), windowsdir & "\system32\") And oFso.FolderExists(windowsdir & "\SysWow64") Then       
    oWs.Run windowsdir & "\SysWow64\WScript.exe """ & WScript.ScriptFullName & """"
    WScript.Quit
End If

'code to run as 32 bit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM