My .net windows application uses an access database...is access runtime required?
Will my .net application function if the user开发者_如何转开发 doesnt have access on their machines?
If not what components do I need?
You don't need Access installed on their machines. If you are using the JET driver, it can do what it needs to do without access being physically installed.
Can't stop myself from recommending that you look at SQL CE 4 (FREE) or SQL Express (FREE) rather than using Access though.
If you are having trouble with an install, ping back the error message.
The big advantage of Jet, which is what you are using, is that it is installed with all recent versions of Windows, certainly since XP, so depending on the application, it can be the most suitable database.
The latest version of the Access engine is ACE. Databases have an ACCDB extension. It no longer ships with Windows like JET did. If you are using that version with a computer that does not have Office 2007 or later you will have to install the engine. You can download it here: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c06b8369-60dd-4b64-a44b-84b371ede16d&displaylang=en
(I posted this as a comment, but I think it includes information not included in other answer)
Jet 4.0 still ships with Windows (as it has since Windows 2000). The ACE is a separate database engine, forked from Jet 4.0 during the development of Access 2007. Jet 4.0 is owned by the Windows development team and will receive no new development (only security patches). It's also 32-bit-only. ACE is under current development, but is not a Windows component. However, as has been pointed out above, it is freely downloadable from Microsoft and can be distributed with apps.
But MDBs are still perfectly usable with the Windows Jet 4.0, as long as you're not compiling for 64-bit, and require no additional components to be installed with your app.
In regard to the original question, if when you say "Access" you mean Jet/ACE files used as a data store only, then all the above is true. But if you mean an Access application, or you want to do something with your database that requires automating MS Access the application, then you definitely do need Access installed. But I think it unlikely that's what's meant.
精彩评论