گاهی برنامه های نوشته شده تحت پلتفرم net. که برای ذخیره اطلاعات خود از بانک های اطلاعاتی Access یا Excel استفاده می کنند، با پیام خطای “Microsoft.Jet.OLEDB.4.0 provider is not registered on the local machine ” و یا “Microsoft.ACE.OLEDB.12.0 provider is not registered on the local machine” مواجه می شوند.
این مشکل زمانی به وقوع می پیوندد که کاربر از OLE DB Provider Jet یا Ace (یک کامپوننت نرم افزاری جهت برقراری ارتباط مصرف کننده OLE DB منبع داده ها میباشد ) برای دسترسی به فایلهای دیتابیس مبتنی بر Microsoft Office مانند فایلهای Excel یا Access بر روی سیستم های 64 بیتی استفاده شده باشد. در چنین شرایطی در صورتیکه کاربر از پلتفرم 64 بیتی استفاده نموده باشد، حتی اگر provider های مذکور نیز به درستی نصب شده باشند، بازهم به خطای مربوطه برخورد خواهد کرد.
مشکل مورد نظر در اینجا است که برنامه ذکر شده در هنگام کامپایل، برای پلتفرم 64 بیتی (X64 )کامپایل می شود، حال آنکه هر دو provider های مورد نظر (Jet / ACE OLEDB ) فقط دارای نسخه های پشتیبانی شده بر روی سیستم 32 بیتی هستند (x86-32 ) و پردازش های 64 بیتی نمیتوانند کامپوننت های 32 بیتی را بارگذاری نمایند بنابراین پیام خطای فوق رخ خواهد داد.
برای رفع خطاهای فوق باید برنامه مورد نظر خود را برای پلتفرم 32 بیتی کامپایل نمایید. بدین صورت که در محیط IDE (visual studio 2008-2010) قسمت تنظیمات مربوط به کامپایل و سربرگ "Build" ، پلتفرم مقصد را از حالت "Any CPU " خارج کرده و بر روی "X86" قرار دهید و سپس کامپایل نمایید.(همانند شکل زیر)
لازم به ذکر است مایکروسافت به همراه Office 2010 نسخه ای 64 بیتی از ACE OLE DB ، با نام Microsoft Access Database Engine عرضه کرده است که میتواند به عنوان جایگزینی مناسب برای Jet OLEDB Provider مورد استفاده قرار گیرد. برای استفاده از Provider مربوط باید ConnectionString خود راجهت اتصال بر روی “Microsoft.ACE.OLEDB.12.0 ” تنظیم نمایید.
در ورود به سیستم مشکل دارید؟ برای بازیابی رمز عبور خود، فقط آدرس ایمیل یا نام کاربری خود را وارد کنید.
برای تحویل سریعتر و قابل اعتمادتر، example@example.com را به فهرست فرستندههای قابل اعتماد خود در نرمافزار ایمیل خود اضافه کنید.