Link to home
Start Free TrialLog in
Avatar of surfsista9
surfsista9

asked on

Help! Access 97 to Access 2000 problems...

I have not looked at Access in 10 years and now need to convert a database from 97 to 2000.

Having many problems, but the biggest one is with my memory. Can someone tell me why I cannot open in design mode the database once brought into 2000? The app has an mdw file which I joined to the workgroup and I'm using the administrators ID, but I cannot see how to look at the table/forms...etc?

What am I missing?

Thanks need quick answers if possible.
Avatar of Leo Alexander
Leo Alexander
Flag of United States of America image

If you are opening the 97 database in the 2000 one,

go to tools > database utilities > convert database
Avatar of surfsista9
surfsista9

ASKER

Well,

Many months ago I went through this exercise. Now I'm trying to go in under 2000 but I cannot get to the structure, the forms, reports, tables. Why is this?
So the database is converted but you want to see the talbes and forms and stuff which are probally hidden
Goto  Window > Unhide and select the main database

I don't get the option to do a window/unhide
Can you goto Tools > Startup?

If so there is an Option to Show Database Window - check that and restart your database

The application is running...I have a shortcut that joins the wrkgroup containing the admin ID...but this doesn't seem to be getting me in.
I only see the application menu, not Access menu.
So you're not even logged into the database yet?
I'm in run mode...not design mode...

The application is running.
have you tried holding the shift key while opening the database?
If this still does not work then that option may have been turned off in code and you will need to reset it.
http://www.mvps.org/access/general/gen0040.htm

Steve
I'm not sure where exactly you are, could you zip it and send it to me and let me take a look?
well, no can't do that...it's propriatary.

Let me ask another question. If I want to convert from 97 to 2000 and get a permissions error, how do I work around this?
First, I would de-secure and import eveything into a new 97 database, convert up to 2000 and resecure.

Steve
Okay how about this, instead of Converting the database, have you tried IMPORTING all the forms, reports, tables into a new 2000 database.
Stevbe,
  I'm curious why import to 97 vice straight to 2000?  

Jay
You could try joining the workgroup in 2000 and then import everything, I'm not saying doing that would not work, security can be picky ... I like to do things in small steps.

Steve
ahh okay, makes sense enough
Alright...I imported and it's 2002, not 2000...sorry, I haven't looked at Access in many moons. Now I have the security out of the picture, here is my real issue...

The guy who wrote this app uses MSAU7032.DLL to open explorer folders but for some reason, even though this dll is on the machine, I get a not found error. I'm assuming maybe some dependency is missing that this dll needs to do it's job. I think this came with the developer toolkit for 97. Where/how do I get all the dependencies needed to run this? I've looked everywhere for downloads, cannot find it out there. I tried registering the dll but I get a registry error.

Any ideas...you guys are GREAT for helping me out.

To browse for Folders I use

Private Type BROWSEINFO
  hOwner As Long
  pidlRoot As Long
  pszDisplayName As String
  lpszTitle As String
  ulFlags As Long
  lpfn As Long
  lParam As Long
  iImage As Long
End Type

Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias _
            "SHGetPathFromIDListA" (ByVal pidl As Long, _
            ByVal pszPath As String) As Long
           
Private Declare Function SHBrowseForFolder Lib "shell32.dll" Alias _
            "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) _
            As Long
           
Private Const BIF_RETURNONLYFSDIRS = &H1

Public Function BrowseFolder(szDialogTitle As String) As String
  Dim X As Long, bi As BROWSEINFO, dwIList As Long
  Dim szPath As String, wPos As Integer
 
    With bi
        .hOwner = hWndAccessApp
        .lpszTitle = szDialogTitle
        .ulFlags = BIF_RETURNONLYFSDIRS
    End With
   
    dwIList = SHBrowseForFolder(bi)
    szPath = Space$(512)
    X = SHGetPathFromIDList(ByVal dwIList, ByVal szPath)
   
    If X Then
        wPos = InStr(szPath, Chr(0))
        BrowseFolder = Left$(szPath, wPos - 1)
    Else
        BrowseFolder = vbNullString
    End If
End Function

that's cool, thanks....but this app is using MSAU7032.DLL all over the place and I prefer not to rewrite anything if possible.

Any other ideas? Keep em coming please...I need all the help I can get.
Sorry usage:

    folderLoc = BrowseFolder("What Folder you want to select?")

there are other functions created from this dll and others...so would prefer not to rewrite the code.
Is MSAU7032.dll listed as a reference or are you making a direct api call?
If it was a reference then from any code window Tool --> References, there probably is a "MISSING" one. Uncheck and then either scroll through the list or use Browse to navigate to the file.

Steve
ohh okay, is the dll registered?

try regsvr32 MSAU7032.DLL

yes, as I said, tried that...get a registry error. I think there may be dependencies...but don't know???
I don't see Tool ----> References enabled in any module or form. Why is that?

Anyway, it looks like a direct call...

Declare Function glr_msauSortStringArray Lib "MSAU7032.DLL" Alias "#403" _
 (astr() As String) As Long
' Sort an array of db objects.
Declare Function glr_msauSortDbobjArray Lib "MSAU7032.DLL" Alias "#404" _
 (atypDBObj() As glrDBObj, ByVal fNamesOnly As Long) As Long
 
Is it possible that a different version of MSAU7032.DLL was used than the one you have currently?
oops..sorry, I was in run mode...found references and no, the dll is not referenced there.
Anything is possible. But wonder why I cannot register it? Makes me think some other dll's are missing.
hmmm ... what version of OS ... I have 2000 witrh Access 2002 and do not have that fiel, the only references to it I could find are for Access 95 so the dll itself may not work in OS higher than 95 :-(

Have you tried unregistering and re-regisdtering ... what id the registry error? Do you have permission to write to the registry?

Steve
But that shouldn't be aproblem since like you said they are direct calls
yes, I have full admin privileges...I'm a developer but not an Access developer.

The registry error is:
LoadLibrary("c:\winnt\system32\msau7032.dll") failed - The specified module could not be found.

sounds like a dependency is missing to me.
This worked for the user on her old machine...running Access 97. She got a new machine and now has the problem. It never worked on my machine.
You said that other functions use the msau7032.dll, do they work or is it just this funciton of it?
msau7032.dll actually was distributed with Access and I don't think there were any other dependanceies ...

did you try

regsvr32 "c:\winnt\system32\msau7032.dll"

from Run?

Steve
Nope...that is what I did...as I said, cannot register and I am making a direct call so this should not matter either way.

CrossWired,

I checked and apparently the app does not use the other declarations of msau7032.dll
in the basMSAU7032 module.
ASKER CERTIFIED SOLUTION
Avatar of modulo
modulo

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial