There are ways to use .NET code integration now. I just delivered my first app that integrates a .NET COM DLL that will allow me to later replace with newer version by simplying copying over the existing DLL!
This isn't native integration but you can leverage the abilities of .NET from within Access.
I use late binding ( CreateObject(sAppClassName) ) so no reference is needed. I do check that the .DLL exists where I expect it first.
In .NET I create a Class Library (using VB.Net) and checked the "Make Assembly COM-Visible" checkbox on the pop-up displayed when you click on the "Assembly Information..." button on the Application tab of the Project settings.
If this interests any readers here are some of the resources I have saved on this issue:
VBA interoperability with .NET with Excel, Word, etc.
------------------------------------------
HOW TO: Call a Visual Basic .NET Class Library from Visual Basic for Applications in Microsoft Office
http://support.microsoft.com/kb/317535Visual Studio Tools for the Office System (3.0)
http://msdn2.microsoft.com/en-us/library/bb871648.aspxInteroperability Between VBA and Visual Studio Tools for the Office System (3.0)
http://msdn2.microsoft.com/en-us/library/bb814696.aspxMSDN Blog:
http://blogs.msdn.com/vsto2/Installing and Using the Office 2003 Primary Interop Assemblies
http://msdn2.microsoft.com/en-us/library/a...office.11).aspxCalling Managed Code from Access VBA
-------------------------------------
Is there a way that my Access VBA Applications can reference a VB.NET DLL?
I have tried using the COM Interop Feature but have had no success. Any
help would be appreciated...
Brendan Reynolds responded on May 31 2005, 2:15 pm
Newsgroups: microsoft.public.access
COM Interop goes the other way - it permits the use of COM components in
managed code.
If you're using Access 2002 or Access 2003, you can use the Web Services
Toolkit to call a Web Service. If your DLL isn't already a Web Service,
you'll need to write one to wrap the DLL.
Microsoft Office XP Web Services Toolkit
http://msdn.microsoft.com/library/default....kitoverview.aspMicrosoft Office XP Web Services Toolkit 2.0
http://www.microsoft.com/downloads/details...;displaylang=enA Beginner’s Guide to calling a .NET Library from Access
http://richnewman.wordpress.com/2007/08/25...ry-from-access/--- uses .NET library as a reference -- done by setting COM related attributes of the .NET project
Exposing COM interfaces of a .NET class library for Late Binding
http://www.codeproject.com/KB/vb/MusaExposingCOM.aspx--- uses .NET library via late-binding (CreateObject) - uses COM Class template in .NET
Managed Add-Ins for Access 2007
http://msdn2.microsoft.com/en-us/library/aa902693.aspxCOM Interoperability in .NET Part 2 - Generating a Type Library (RegAsm.exe)
http://www.developerfusion.co.uk/show/2134/3/The regasm.exe utility not only registers an assembly and it also creates the
required type library file, as shown here:
regasm Server.dll /tlb:Netserver.tlb /codebase
and you can un-install with:
regasm /u Server.dll /tlb:Netserver.tlb /codebase
VB6 interoperability with .NET
-------------------------------
Interop Forms Toolkit 2.0
http://msdn2.microsoft.com/en-us/vbasic/aa701259.aspx.NET to COM interoperability
-----------------------------
Microsoft .NET/COM Migration and Interoperability - Patterns and Practices
http://msdn2.microsoft.com/en-us/library/ms978506.aspx