Results 1 to 15 of 15

Thread: [RESOLVED] Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

  1. #1

    Thread Starter
    New Member
    Join Date
    Feb 2018
    Posts
    10

    Resolved [RESOLVED] Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    I have two massive programs which have different, very large Access 2007 .accdb databases. One is Natural Language Processing and the other is a bridge game. I've been working on these programs for 20+ years as a retirement hobby; unlikely ever to be finished in my lifetime, but still important to me as a hobby.

    I installed MS OneNote recently because I read that it can perform OCR, but I couldn't get it to work, so I uninstalled it, after which neither program would run any more. Long story, short: all the selections in "Project - Reference" and " - Components" were wiped out somehow.

    I was able to reselect them all except "Microsoft Office 12.0 Access Database Engine Object Library". It is no longer in the Reference list. Instead, it has "Microsoft Office 16.0 Access Database Engine Object Library", but it points to a file in "C:\Program Files (x86)\Microsoft Office\root\vfs\ProgramFiles...". (That is all that is shown.) The "vfs" folder is now empty.

    I don't know the actual filename which the Engine lines pointed to. In "C:\Program Files (x86)\Common Files\Microsoft Shared\OFFICE12" is a file named "ACEDAO.DLL" but when I Browse in References and select that file, it does not show up in the Reference list.

    When I load the bridge program and open a form with the Adodc data controls on it, I get the following message for each control:
    "Provider cannot be found. It may not be properly installed."

    In the Adodc controls' Properties window, "Use Connection String" is
    Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Programming\VB98\Bridge\BidBase.accdb;Mode=ReadWrite;Persist Security Info=False

    When I "Test Connection", it says:
    Test connection failed because of an error in initializing provider.
    [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified.

    At first I got a message about the Registry not being right (didn't write down the message), so that may be related, though I never got the message again and I wouldn't know what to do in the Registry anyway.

    The program's .vbp file has the following at the start:
    Reference=*\G{3D5C6BF0-69A3-11D0-B393-00A0C9055D8E}#1.0#0#Package\Support\MSDERUN.DLL#Microsoft Data Environment Instance 1.0
    Reference=*\G{4AC9E1DA-5BAD-4AC7-86E3-24F4CDCECA28}#c.0#0#..\..\..\PROGRA~2\COMMON~1\MICROS~1\OFFICE12\ACEDAO.DLL#Microsoft Office 12.0 Access database engine Object Library
    Reference=*\G{E0E270C2-C0BE-11D0-8FE4-00A0C90A6341}#1.5#409#..\..\..\Windows\SysWOW64\simpdata.tlb#Microsoft OLE DB Simple Provider 1.5 Library
    Reference=*\G{56BF9020-7A2F-11D0-9482-00A0C91110ED}#1.0#0#..\..\..\WINDOWS\SysWOW64\msbind.dll#Microsoft Data Binding Collection VB 6.0 (SP4)
    Reference=*\G{B691E011-1797-432E-907A-4D8C69339129}#6.1#0#..\..\..\Program Files (x86)\Common Files\System\ado\msado15.dll#Microsoft ActiveX Data Objects 6.1 Library
    Reference=*\G{06E83385-1A9A-46B1-B94F-D6CAFEAC6A51}#1.0#0#BidBaseDB.dll#BidBaseDB
    Object={F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0; ComDlg32.ocx
    Object={FAEEE763-117E-101B-8933-08002B2F4F5A}#1.1#0; DBLIST32.OCX
    Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.2#0; Mscomctl.ocx
    Object={6FBA474E-43AC-11CE-9A0E-00AA0062BB4C}#1.0#0; SYSINFO.OCX
    Object={67397AA1-7FB1-11D0-B148-00A0C922E820}#6.0#0; MSADODC.OCX
    Object={CDE57A40-8B86-11D0-B3C6-00A0C90AEA82}#1.0#0; MSDATGRD.OCX
    Object={5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0; MSFLXGRD.OCX

    The database works fine when I open it in Access 2007.

    I upgraded this program from Access 1997 to Access 2007 in mid-2018, but I can no longer find the DVD, so reinstalling Access isn't an option. I see "OfficeSetup.exe" (6.6MB) dated 11/24/2020 in my Downloads folder, which must be what OneNote installed when I thought I was getting a simple app.

    I had a terrible time getting Access 2007 to work with my program back then, and I documented all the problems and fixes for future reference, but I never had this particular problem.

    I know that this is a lot of stuff to wade through, but I wanted to provide all the relevant info I could think of.

    I've tried using backups. I've searched the Web. I'm stuck.

    Thanks for any help.

  2. #2
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    Are you really using both ADO and DAO in the same program? If so, why? Sounds like a mistake.

    One problem with the ACE formats is the instability over time. It sounds like part of your problem is that the OneNote install trashed Microsoft.ACE.OLEDB.12.0 and installed Microsoft.ACE.OLEDB.16.0, one of the most common instabilities.

    Ideally you'd have chosen to use the "Access 2000/2003" format MDB instead. This is the native format of the Jet 4.0 Provider which is a stable part of Windows and has been for decades now.

    Why would the same program use both the simplistic ADODC and its big brother the Data Environment? Egad, how many separate opens do you have on the same database?


    If you don't need this to run on other machines you can probably just make a quick hack and be on your way. Just update your failing connection string to use the newer ACE Provider (14.0?, 16.0?) you installed over the top of the older one.

    If you need portability I'd move to Jet and its default engine type 5 (2000/2003 format MDB).

  3. #3
    PowerPoster
    Join Date
    Jan 2020
    Posts
    3,746

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    download Microsoft Access Database Engine from microsofr,for support accdb,xlsx

  4. #4
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Location
    Sofia, Bulgaria
    Posts
    5,120

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    AFAIK there is no Microsoft.ACE.OLEDB.14.0

    The new Microsoft.ACE.OLEDB.16.0 OLEDB provider is very unfotunate decision, unless the change is big enough as from JET 3.51 to JET 4.0

    cheers,
    </wqw>

  5. #5
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    Quote Originally Posted by wqweto View Post
    AFAIK there is no Microsoft.ACE.OLEDB.14.0
    Probably true, though I do see people referring to a 15.0 (2016).

    It might also be possible to reinstall the 12.0 package without breaking 16.0, but I'd tend to avoid them all like the plague. Drop back to Jet 4.0 if you want stability and reliability.

  6. #6
    PowerPoster
    Join Date
    Feb 2012
    Location
    West Virginia
    Posts
    14,205

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    I always use the 2000-2003 mdb formats for access databases. Never saw any reason to move to the accdb also have not created anything new with DAO in about 20 years. Everything this century has been done in ADO.

  7. #7
    Junior Member
    Join Date
    Jul 2019
    Posts
    27

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    Quote Originally Posted by xiaoyao View Post
    download Microsoft Access Database Engine from microsofr,for support accdb,xlsx
    You need the Office 2010 engine (Access Database Engine 2010), and ensure to install the x86 version (AccessDatabaseEngine.exe), not x64 version (AccessDatabaseEngine_64.exe), because VB6 compiles 32 bit programs.

    BTW, this engine installs the "Microsoft.ACE.OLEDB.12.0" driver you are using in ADODC...

  8. #8
    PowerPoster
    Join Date
    Dec 2004
    Posts
    25,618

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    if you still have your previous office version, try re-installing or repair
    i do my best to test code works before i post it, but sometimes am unable to do so for some reason, and usually say so if this is the case.
    Note code snippets posted are just that and do not include error handling that is required in real world applications, but avoid On Error Resume Next

    dim all variables as required as often i have done so elsewhere in my code but only posted the relevant part

    come back and mark your original post as resolved if your problem is fixed
    pete

  9. #9
    Frenzied Member
    Join Date
    Dec 2008
    Location
    Melbourne Australia
    Posts
    1,487

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    Check your Windows Restore points.
    There may be one recent enough for you to roll back.

  10. #10
    Banned
    Join Date
    May 2020
    Location
    https://t.me/pump_upp
    Posts
    42

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    1 / I use VB6 on Windows10x64 and Ms Office 2016x32, Ms Office 365x32 has link the Ms office libraries used very well

    2 / When I switch to Ms Office 2016x64 and Ms Office 365x64, when using ADODB, it gives an error of unusable ...

    when I install Access Database Engine 2010 (x32), use ADODB well and check References of Excel.exe is good on Ms office2016x64 ...

    However, on Ms Office 365x64, it cannot be done when from VB6 Check References \ Excel.EXE (Ms Office365x64)

    Why haven't I been able to fix it up till now? ADODB on Ms Office365x64 is fine

  11. #11
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Location
    Sofia, Bulgaria
    Posts
    5,120

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    @PhuongNam: Please post in your own thread if you need reply from regulars here, do not hijack other (related or not) threads.

    cheers,
    </wqw>

  12. #12

    Thread Starter
    New Member
    Join Date
    Feb 2018
    Posts
    10

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    Thanks to everyone who replied. I've spent the time since then trying everything. Sometimes I could fix one problem only to create a new one. I had not previously tried doing a Restore because in all the years since Restore was "invented", I've never had to do a Restore and eventually just quit bothering to set a Restore Point.

    Out of desperation, I looked at the Restore Points list and there was only one - the day MS installed OneNote and screwed up my computer. So I Restored and while that fixed some things, it did not fix the problem of "Microsoft Office 12.0 Access database engine" being missing. This mystified me because I thought that the purpose of Restore was to put things back the way they were before the Restore Point, and everything was fine before that.

    Another strange things is that I have daily backups of my program directories, some of them in Zip files, and when I would load one into VB6 and check References, many of them were unchecked and re-checking them got rid of some of my errors, but with the system supposedly restored and with hundreds of these backup files, surely MS didn't somehow uncheck Resources in all of them. My guess is that they did something in the Registry that was causing it as the files are being loaded again. This is out of my league, but I can't think of anything else.

    When I tried to download "Microsoft Office 12.0 Access database engine Object Library", MS was no longer making it available and instead put me on a page for downloading "Microsoft Office 10.0 Access database engine" which wasn't what I needed and I didn't want to risk screwing up anything else. But with nothing left to lose, I just tried it and everything is working, and References now shows that "Microsoft Office 12.0 Access database engine" is present.

    So thanks again.

  13. #13
    Junior Member
    Join Date
    Jul 2019
    Posts
    27

    Re: Access 2007 "Provider cannot be found" by VB6 after MS OneNote install.

    Quote Originally Posted by NFordVBF View Post
    ...

    When I tried to download "Microsoft Office 12.0 Access database engine Object Library", MS was no longer making it available and instead put me on a page for downloading "Microsoft Office 10.0 Access database engine" which wasn't what I needed and I didn't want to risk screwing up anything else. But with nothing left to lose, I just tried it and everything is working, and References now shows that "Microsoft Office 12.0 Access database engine" is present.

    ...
    You are mixing concepts. Microsoft released only two versions of "Acess database engine": One version related to "Access 2010" and one for "Access 2016". "2010" and "2016" are numbers related to the "commercial names" of Office.

    The names of OLEDB drivers are related to the (internal) version number of Office:


    • Version 12.0 for "Office 2007"
    • Version 14.0 for "Office 2010"
    • Version 15.0 for "Office 2013"
    • Version 16.0 for "Office 2016"


    Office 2007 (v12.0), Office 2010 (v14.0), and Office 2013 (v15.0) databases use the same format, and this is why you only needed to download "Access Database Engine 2010" for everything to work again, and this is why exists a version 12.0 OLE DB driver, but not a version 14.0 or version 15.0 OLE db driver...
    Last edited by LeoCV; Dec 4th, 2020 at 01:19 PM. Reason: Typo correction

  14. #14
    PowerPoster
    Join Date
    Dec 2004
    Posts
    25,618

    Re: [RESOLVED] Access 2007 "Provider cannot be found" by VB6 after MS OneNote install

    So I Restored and while that fixed some things, it did not fix the problem of "Microsoft Office 12.0 Access database engine" being missing.
    restore points should be able to fix registry problems, but not necessarily replace removed files
    i do my best to test code works before i post it, but sometimes am unable to do so for some reason, and usually say so if this is the case.
    Note code snippets posted are just that and do not include error handling that is required in real world applications, but avoid On Error Resume Next

    dim all variables as required as often i have done so elsewhere in my code but only posted the relevant part

    come back and mark your original post as resolved if your problem is fixed
    pete

  15. #15
    PowerPoster wqweto's Avatar
    Join Date
    May 2011
    Location
    Sofia, Bulgaria
    Posts
    5,120

    Re: [RESOLVED] Access 2007 "Provider cannot be found" by VB6 after MS OneNote install

    OP probably got "feature update" to latest Windows 10 20H2. This is like a full OS update, not QFE or Comulative Update and I very much doubt it be rolled back with a restore point.

    This is like migrating from Win8 to Win10 and rolling back the OS upgrade with a restore point.

    cheers,
    </wqw>

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width