Solved

Access 97 & Vista Home Premium 64 Bit COMPACT AND REPAIR

Posted on 2009-03-30
14
1,700 Views
Last Modified: 2012-05-06
I am running Access 97 on a Vista home premium 64 bit OS platform.  In order to make Acc97 run on the is os I had to do the following;

Run the office SP1, SP2 and the Jet 3.5 patches.

Access now runs fine on this machine, EXCEPT:

I have written an Acc97 routine that performs a compact & repair on the dB.  I ran this today and the system "hung".  I let it sit for at least 30 mins (20 mns more than it took under XP OS) and finally got a "program not repsonding" message when I clicked on screen.  The dB was hosed, completely.  I brought up a back up and tried doing a compact under the Acc97 direct environment, bypassing my code.  Compact worked.  Did a repair the same way and the system hung again, completely destroying the dB.  BTW...  running the SAME routines under Vista home basic 32 bit runs fine.

I have read (in various places) that the Jet 4.0 patch "may" solve this problem, but I saw nothing that directly points to this issue.

1)  Is there hope to make this work?
2)  Will Jet 4.0 fix this issue?
3)  What else could Jet 4.0 do to my app?

While not a show stopper, this is a major point of issue that i need to address.  the dB is over 250 Mb in size, and has worked flawlessly under XP Pro and Vista home basic.

FORGOT TO ADD: Vista Home Premuim OS is currently at SP1 level.  Sorry.  MR
0
Comment
Question by:MalcolmRandolph
  • 7
  • 4
14 Comments
 
LVL 23

Accepted Solution

by:
redrumkev earned 400 total points
ID: 24028827
MalcolmRandolph,

How are you doing?

Perhaps the issue is that your app is calling on the Msjet35.dll file and it is not located in the C:\Windows\ directory, as 64-bit versions are located in C:\Windows\SysWOW64

I know that there is better 64-bit in the newer version of Jet (4.0) and many service packs have been released (I think SP 8) is the newest.

I would go ahead and install it. But I would also think about re-building your app, within Access, following the install.

You could also try running this in compatiblity mode, which in Vista, you can right click on the Icon for Access, and select Properties -> Compatibility -> Check "Compatibility Mode" -> Run this as Windows XP Sp2, which you said it ran fine on. See if it will now work.

Hope this helps,
Kevin
0
 

Author Comment

by:MalcolmRandolph
ID: 24029794
Kevin,

I am well, except I'm losing more hair than I'd like due to Vista :)

First, I appreciate your response.  I am new here, and slowly making my around the site.  I hope it's the gold mine it seems to be!

I am trying your suggestion one at a time here so I don't screw things up on my system.

I can't really follow the install on Office 97 Pro as I also have Access 2007 on this machine.  So, following all the articles about 2 versions of Access, I installed in a different directory.

My first attempt was setting Access97 to run under XP SP2 compatibility mode, which I've done, and then attempting to run a repair directly under Access bypassing my code.  It's been running now for 18 mins, no messages, hourglass, no hard drvie activity, empty screen.  I'm going to let it run for a long time to see if anything happens.  Under XP this would take less than 10 mins.

I will get back to you as soon as I have a result (seems like a bad one at this stage) and then move on to your other suggestions.

Again, thank you for your response...  time will tell, huh?

Malcolm
0
 

Author Comment

by:MalcolmRandolph
ID: 24030070
Hi Kevin,
Running Access97 under XP SP2 compatibility didn't work.  Repair (under direct Access97, not my code) failed.  Ran for over 40 mins and just sat there with an hourglass.

Attached are the locations of JET (35 and 40) on my system.

Any suggestions more than before?

Thanks,
Malcolm
MSJET-Locations.JPG
0
 
LVL 23

Assisted Solution

by:redrumkev
redrumkev earned 400 total points
ID: 24030820
Malcolm,

Yes, Experts-Exchange (EE) is a GOLDMINE! I use to come here just for answers to my questions, but then I started to see that answer others actually teaches me more! Even if my help towards your issue does not pay off and someone else comes by with suggestions, in the end, I will learn more about this, which your particular issue, I have never seen before. So it is a win-win situation and often saves me 4-5 hours per problem and some issues, I would have not been able to solve for months or years, because I simply did not have enough knowledge in that area.

Back to your question - which msjet40.dll is being used in your query. Is it in the one the SysWOW64, or the x86 (32-bit version). Since your program was written in 32 bit, it should work, however, it was written in 16 bit, I am not sure it will supported with Vista 64 bit. I just read an article which said MS is trying to do one generation back in support only. Thus 32 bit O/S's will run 32 or 16 and 64 bit O/S's will run 64 or 32.

Is there a reason you can't use Access 2007, as you said you have that installed. Is just that your macro (or routine) is in 97. Is it a macro? If so, have you tried to export it to a file and then load that in 2007? I assume 2007 should be able to open your 97 database without a problem and the engine with 2007 will for sure would on the 2007 application instance.

Kevin
0
 

Author Comment

by:MalcolmRandolph
ID: 24031008
Hey Kevin,

I agree...  even though EE is new to me, I have used numerous "like" forums with GREAT success, but EE seems like it's at a "higher" level of expertise and commitment.  So, I have HIGH hopes...

Migration to Acc2007 is a possibility, however, it would require at least 5 more licenses on other machines (not 32 bit) in order for me to accomplish what needs to be done.  I came in here (work) and wrote over a dozen hard core apps in 97 to help run the business.  This would mean all computers using the apps would need to be upgraded.  So, cost is an issue here.

Good suggestion, but a costly one.

malcolm
0
 

Author Comment

by:MalcolmRandolph
ID: 24031925
Kevin,

I just relaized I didn't answer your question...

"which msjet40.dll is being used in your query. Is it in the one the SysWOW64, or the x86 (32-bit version). "

I (sadly) can not answer.  I simply don't know.  The Jet35.dll is dated 1999, and is most likely the one MSAcc97 installed and then updated when I ran the Jet3.5 patch in order to get Acc97 to run on this machine.  So, again sadly, I don't know which one Acc97 is using.

Malcolm
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 23

Assisted Solution

by:redrumkev
redrumkev earned 400 total points
ID: 24033352
Malcolm,

I think that it is using the 64 bit one (that is, your version of vista is using the 64 bit one) and Access 97 does not like that. I am going to ask for some additional help, as I don't know if a solution is going to be possible in using Acc97 on a 64-bit O/S, as I don't think 64 bit O/S's were available when Acc97 released as a platform to run it on. I know they existed, but mainly in Unix or Server based deployments.

Kevin
0
 

Author Comment

by:MalcolmRandolph
ID: 24033665
Kevin (at al),

Okay, maybe a solution is at hand, one I may not like, but one maybe worth trying.

What if I uninstalled Access 2007 from the machine.  I'd rather not lose the office suite software, but maybe I can uninstall 2007 and might THAT solve the issue?  I don't know if the uninstall would remove the jet40 or other interferring items...

Does this possibly present a solution, anyone?

Malcolm
0
 
LVL 23

Assisted Solution

by:gecko_au2003
gecko_au2003 earned 100 total points
ID: 24036543
Can't you find the 64 bit Jet Dll ( whether its the 3.5 or the 4.0 version - try both ) and un register the ones in the C:\Windows\ or C:\Windows\System32 directory and register the 64 bit versions of those dll's in the C:\Windows\ or C:\Windows\System32 directory and then make a backup of your access db and try again ?

That way the dlls for the Jet database are the same in both directorys ie the x86 dll directory and the 64 bit directory as 64-bit versions are located in C:\Windows\SysWOW64.

Short of that - not sure what the licensing situation is but maybe use VirtualBox and have xp installed on virtual box and run it from a virtual machine ?

http://www.virtualbox.org/
0
 

Author Comment

by:MalcolmRandolph
ID: 24086878
Hello to all...
First, thanks to eveyone who has attempted to resolve my issues.

Second, sadly I feel the only way to go with this situation is to revert back to XP Pro OS.  The compact & repair simply does NOT work under Vista 64.  I could've worked around this by doing a C&R on another machine, but that's just extra steps that might have caused more problems.

In addition, I installed an Access 2007 run time application on this machine, and while the install worked very well (with some Vista read/write permissions errors), it hosed my Access 97 install.  Native Acc97 wouldn't even run anymore due to Windows registry errors that the Acc2007 runtime install did.  Luckily, I did a system restore point prior to the Acc2007 runtime install, and once I deleted the runtime install and went back to my restore point, Acc97 worked again.

I guess I'm to the point where I don't need this type of on-going headache.  By reverting back to a proven OS, I remove the fear and doubt of installing anything else that's proven to work under the XP OS.  I know I'm moving "backwards" here.  If my job was to iron out OS issues and maintain the latest and greatest software on our systems, I might continue the battle and migrate everything to 2007, but it isn't.  My apps are here to help me do my job, my apps are NOT my job.

Anyway, I ramble.  Again, thanks to all who attempted to help.  EE is a great resource, keep up the good work everyone!

Malcolm Randolph
Andy's IGA Houlton Foodliner
Houlton, ME.
0
 
LVL 23

Assisted Solution

by:redrumkev
redrumkev earned 400 total points
ID: 24093318
Malcolm,

Thank you for clearing this up. Sometimes the answer is really to do nothing or even go back. I think that you might have problems in the future, say the release of windows following Windows 7 (XP -> Vista -> Windows 7 -> Something else) as microsoft usually drops support for those O/S's and apps which are more than 3 back. Not that your stuff will just stop working, but if you hardware goes, at that point, replacements might be hard to find and most "new" replacements will not have XP drivers (at that point, in say 3-5 years).

But I agree that right now, you are doing the best thing going back. The few features you might gain are going to be out weighed by the many hours of re-writing and re-creating (basically, re-inventing the wheel). And I also view "apps" as "tools" and we are the workers that use them, not the apps using us, thus we need them (the apps) to work for us, not against us!

If you want, go ahead and close out this question. You can select your own answer, accept multiple answers, etc. If you do not feel that their is a solution here (which your solution is "going back to XP and Access 97", that is fine) but if any of the comments or experts helped, you can award them some or all of the points.

If you go here: http://www.experts-exchange.com/help.jsp?hi=396 then on the left, click:
How do I close a question, it will give you some tips. Then the close question can be access by people searching for similar topics/problems.

Thank you,
Kevin
0
 

Author Closing Comment

by:MalcolmRandolph
ID: 31568000
Everyone at EE was very helpful, even if we didn't come to a true solution.  The solution is my plan on a best track for the situation I am in, and not necessarily the one I wanted.  But, a solution is a solution, and EE helped me get there.
0

Featured Post

Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

Join & Write a Comment

Deploying a Microsoft Access application in a Citrix environment is not difficult but takes a few steps. However, Citrix system people are often of little help, as they typically know next to nothing about Access. The script provided here will take …
Technology opened people to different means of presenting information, but PowerPoint remains to be above competition. Know why PPT still works today.
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now