[AccessD] Access97 on W2000 crashes

MartyConnelly martyconnelly at shaw.ca
Thu Jan 12 13:14:18 CST 2006


You can remove DAO 3.51 from the reference list and replace with DAO 3.60
Then run Debug.Print DAO.DBEngine.Version
It returns 3.6
I use to read 2000 mdb's in Access 97 VBA. It won't allow you to link tables
as Access itself defaults to 3.51 but you can use from VBA code to read 
a 2000 mdb
Of course MS says this is unsupported.

This is security patch to Jet 3.51 after installing Office 97 SR-1 and SR2-B

Jet 3.51 Service Pack 3
http://www.microsoft.com/downloads/details.aspx?FamilyID=7e82ef88-52ec-4a8f-8bb2-8b06d6cb668d&DisplayLang=en

Sub testb()
   Dim db As DAO.Database
    Dim dbe As Object
    'Set dbe = CreateObject("DAO.DBEngine.36")
    'Set db = dbe.CreateDatabase("c:\temp\test.mdb", _
    ' ";LANGID=0x0409;CP=1252;COUNTRY=0")
       Set db = OpenDatabase("c:\temp\test.mdb")
    Dim tdfLoop As TableDef

For Each tdfLoop In db.TableDefs
        Debug.Print tdfLoop.Name
      
Next tdfLoop
Set db = Nothing
    
End Sub


Shamil Salakhetdinov wrote:

>Marty,
>
>MS Access 97 uses Jet 3.5 independent of the reference set to DAO 3.51 or
>DAO 3.6:
>
>The simple VB6 utility I made for Andy yesterday says that:
>
>http://smsconsulting.spb.ru/download/tests/myPSAPI.zip (10KB)
>
>I have here:
>
>Access97
>========
>
> <BaseName>msjet35.dll</BaseName>
>  <ExeFullPath>D:\WINDOWS\system32\msjet35.dll</ExeFullPath>
>  <version>
>  <vi>CompanyName: Microsoft Corporation</vi>
>  <vi>FileDescription: Microsoft Jet Engine Library</vi>
>  <vi>FileVersion: 3.51.2723.0</vi>
>  <vi>InternalName: MSJET35.DLL</vi>
>  <vi>LegalCopyright: Copyright (C) Microsoft Corp. 1993-1996</vi>
>  <vi>OriginalFilename: MSJET35.DLL</vi>
>  <vi>ProductName: Microsoft® Jet</vi>
>  <vi>ProductVersion: 3.51.2723.0</vi>
>  </version>
>
>Access2003
>==========
>
>  <BaseName>msjet40.dll</BaseName>
>  <ExeFullPath>D:\WINDOWS\system32\msjet40.dll</ExeFullPath>
>   <version>
>  <vi>CompanyName: Microsoft Corporation</vi>
>  <vi>FileDescription: Microsoft Jet Engine Library</vi>
>  <vi>FileVersion: 4.00.8618.0</vi>
>  <vi>InternalName: MSJET40.DLL</vi>
>  <vi>LegalCopyright: Copyright (C) Microsoft Corp. 1993-1999</vi>
>  <vi>OriginalFilename: MSJET40.DLL</vi>
>  <vi>ProductName: Microsoft (R) Jet</vi>
>  <vi>ProductVersion: 4.00.8618.0</vi>
>  </version>
>
>Am I missing something? (Yes, I see I don't have latest Jet 3.5 DLL
>installed - something else?)
>
>Shamil
>
>
>----- Original Message ----- 
>From: "MartyConnelly" <martyconnelly at shaw.ca>
>To: "Access Developers discussion and problem solving"
><accessd at databaseadvisors.com>
>Sent: Wednesday, January 11, 2006 10:27 PM
>Subject: Re: [AccessD] Access97 on W2000 crashes
>
>
>  
>
>>Just something else to check.
>>This will tell you the version of DAO is in use within Access97 mdb
>>It will return either 3.51 or 3.6, you can use either with Access 97
>>depending on your reference settings.
>>
>>Debug.Print DAO.DBEngine.Version
>>
>>You might want to check you OS environment to see what Jet SP you are
>>running
>>on your home machines and client. You can do this in code but this maybe
>>quicker.
>>
>>I have Jet SP8 installed
>>right click on these files in explorer then  select properties
>>Version Tab and look at the File Version Number
>>
>>DAO 3.51
>>C:\WINDOWS\system32\msjet35.dll
>>
>>3.51.3328.0
>>
>>DAO 3.6
>>C:\WINDOWS\system32\msjet40.dll
>>
>>4.00.8618.0
>>
>>
>>To find which older versions you maybe running insert above dll names
>>in DLL Help database to get older version numbers and what product
>>installs them.
>>
>>http://support.microsoft.com/dllhelp/
>>
>>Andy Lacey wrote:
>>
>>    
>>
>>>Well I'm not doing anything clever but it is working. And yes, if I exit
>>>      
>>>
>and
>  
>
>>>reopen the app the compile is greyed out. The code I call at the start is
>>>below. The sequence is that the desktop icon runs the mdb with a /X to
>>>      
>>>
>run a
>  
>
>>>specific macro. The macro calls a function to handle all my starting up
>>>stuff, and that, fairly early on, calls the Recompile function.
>>>
>>>Function Recompile
>>>If Application.IsCompiled = False Then
>>>Call SysCmd(504, 16483)
>>>End If
>>>End Function
>>>
>>>So, if I decompile and run my icon it recompiles and saves (and you can
>>>watch the progress meters). If I exit and then run again it does not now
>>>recompile. Is that unusual?
>>>
>>>Bear in ind this is A97. Don't know if your experience is on later
>>>      
>>>
>versions.
>  
>
>>>--
>>>Andy Lacey
>>>http://www.minstersystems.co.uk
>>>
>>>      
>>>
><<< tail skipped>>>
>
>  
>

-- 
Marty Connelly
Victoria, B.C.
Canada






More information about the AccessD mailing list