难道你不能通过VBScript实现ADOX库吗?下面的代码可以在32位的Windows7和Office2010上通过Access 2010完美运行,但不能通过VBScript运行。ADOX不就是像FileSystemObject一样的另一个COM对象吗?
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。
发布于 2015-04-28 05:04:29
这不是一个简单的答案,仅仅是一个对我有很大帮助的建议。我经常与供应商一起工作,只与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 bithttps://stackoverflow.com/questions/24666783
复制相似问题