Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

JetEngine RefreshCache 1

Status
Not open for further replies.

RBSTR

Programmer
Nov 10, 2005
71
GB
Hi

A VB6 app written 8 years ago references Microsoft Jet and Replication Objects 2.6Library (MSJRO.DLL) and Microsoft ActiveX Data Objects 2.6 Library (msado26.tlb)

A part of the code calls JetEngine RefreshCache
Code:
Dim je As New JRO.JetEngine
...
je.RefreshCache gcnn1

I'm now trying to test this application on Windows 7 and Windows Server 2008 R2.

When my installer attempts to register MSJRO.DLL it returns
"The procedure entry point _LoadVersionedResourceEx@16 could not be located in the dynamic link library MSDART.DLL"
and then
"c:\windows\system32\MSJRO.DLL
Unable to register the DLL/OCX: Loadlibrary failed; code 127. The specified procedure could not be found."

I can select ignore and let the installer complete.

I can then see MSJRO.DLL and MSDART.DLL in C:\Windows\SysWOW64\

My testing of the application then seems to conclude OK.

Now my guess is RefreshCache must have been added to ensure the recordset (connected to an Access database) being read is upto date.

My testing did not seem to show any problems but the message regarding the registration of MSJRO.DLL concerns me.

Any ideas how I can confirm whether it did register correctly to allow a RefreshCache command to conclude successfully?

Alternatively how I can work around the need to call RefreshCache/register MSJRO.DLL. For example if I reference a more recent Microsoft ActiveX Data Objects library may this remove the need to call RefreshCache? Or update the Access database to a newer version (it's currently Access 2000 file format)?

Yours in hope.
 
Your installer shuld not be trying to deploy MSJRO.DLL, it should already be present as part of the OS. Same for MSDART.DLL. Even when deploying either Jet or ADO you should use the provided packages and not try to deploy individual files.

The message might have been part of Windows trying to prevent you from overlaying the system copy with one that is older or even has the wrong build for the OS (many of these things are compiled specifically for each OS).

Your program should be running fine, despite your near brush with disaster from a faulty installation package.
 
Excellent dilettante that does seem to be the solution.
I looked at a refresh Windows 7 install and could find MSJRO.DLL and MSDART.DLL.
I applied a new installer which did not reference neither MSJRO.DLL nor msado26.tlb.
The installer completed OK and I could run my application OK including where RefreshCache would have been called.
Many thanks.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top