如何获取 AccessVersion?
我看到对具有“属性”集合的对象的引用,但我不知道该对象是什么。
例如http://support.microsoft.com/kb/321329
与上述相关,我想我的问题是:有没有办法在不自己进行互操作的情况下访问 msado15.dll 功能?
我一直在寻找 .Net 的 JRO COM 对象,但它似乎没有我想要的东西。
最终,我只想以编程方式确定JET
特定 .mdb 文件的引擎版本。
如何获取 AccessVersion?
我看到对具有“属性”集合的对象的引用,但我不知道该对象是什么。
例如http://support.microsoft.com/kb/321329
与上述相关,我想我的问题是:有没有办法在不自己进行互操作的情况下访问 msado15.dll 功能?
我一直在寻找 .Net 的 JRO COM 对象,但它似乎没有我想要的东西。
最终,我只想以编程方式确定JET
特定 .mdb 文件的引擎版本。
要确定.mdb
文件版本,您可以使用我在此处找到的以下 VBScript/VBA 代码:
Set objAccess = CreateObject("Access.Application")
objAccess.OpenCurrentDatabase "C:\Scripts\Test.mdb"
intFormat = objAccess.CurrentProject.FileFormat
Select Case intFormat
Case 2 Wscript.Echo "Microsoft Access 2"
Case 7 Wscript.Echo "Microsoft Access 95"
Case 8 Wscript.Echo "Microsoft Access 97"
Case 9 Wscript.Echo "Microsoft Access 2000"
Case 10 Wscript.Echo "Microsoft Access 2003"
End Select
在 C# 中,您可以添加对“Microsoft Access 14.0 Object Library”(或类似)的引用,然后使用一些代码,例如
var objAccess = new Microsoft.Office.Interop.Access.Application();
objAccess.OpenCurrentDatabase(@"C:\Users\Public\Database1.accdb");
int intFormat = (int)objAccess.CurrentProject.FileFormat;