Hi all,

A small program in vb.net hitting Microsoft Access is failing on Win2000. The program only works when it is run from an XP or 2003 environment. It fails and gives the following error (P9 : system.invalidoperationexception) when it runs on our Win2000 server.

Any ideas?

Thank you

Dani AI

Generated

This kind of failure (same VB.NET app runs on XP/2003 but throws a System.InvalidOperationException on Windows 2000) is usually environmental rather than a bug in the managed code. described a classic cross‑OS symptom and was right to flag compatibility as a likely factor. The most productive approach is to gather exact failure details and then compare the two environments for missing native pieces or permission differences.

Practical checklist to diagnose and fix similar cases:

  • Capture the full exception (stack + inner exception) and check Event Viewer. The inner exception often names the missing provider or permission problem.
  • Confirm the target .NET Framework and service packs are installed on the 2000 machine. Mismatched CLR versions can trigger runtime exceptions.
  • Verify native data providers and drivers the app uses (Jet/ACE or ODBC/OLEDB) are present and registered. Check the registry keys for data providers (for example HKLM\SOFTWARE\Microsoft\Jet and HKLM\SOFTWARE\Microsoft\DataAccess) and confirm the provider named in your connection string is available. Re-register COM providers with regsvr32 if needed.
  • Check file/folder permissions on the Access file and its folder: the process must be able to create lock files (read/write). If the app runs under IIS/service, confirm the service account has an interactive profile and appropriate NTFS rights.
  • Use Process Monitor (ProcMon) to watch for ACCESS DENIED or NAME NOT FOUND on DLLs/files and Dependency Walker for missing native DLLs. Those traces point to exactly what the OS is missing.

Caveats and prevention: Windows 2000 is long out of support, so document exact dependency versions, bundle required native installers when deploying, and test on the oldest target OS in your environment. Centralized exception logging plus a short ProcMon trace will usually find the root cause quickly.

Recommended Answers

All 2 Replies

Uncompatiblity in running applications with the OS, sure you'll find the version of access should be run on OS above XP and so on... Contact Microsoft technical support for more information.

Problem resolved by upgrading the MDAC to 2.8 on the Windows 2000 server.

Thanks,

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.