Max Sherman
max at sherman.org.uk
Mon Aug 15 15:06:35 CDT 2005
Don't retype it, just cut-n-paste into Notepad. This will drop any non-normal-text characters. Then reverse it back in. HTH Max -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John W. Colby Sent: 15 August 2005 18:31 To: 'Access Developers discussion and problem solving' Subject: RE: [AccessD] Bug Report > Call SaveAsText(acForm, "tfrmClaim", "c:\tfrmClaim.txt") That was cool. The text file is 390 kbytes so it seems unliekly I can "scan it closely" And unfortunately, remember I said I had "pushed it out of the OnOpen" - the close is now back in the calling function that opens the form. The truly strange part is that there is no code left in that function, i.e. it just exits the sub. Sigh. I was going to try retyping in the offending line of code to see if I could clean the source stream. John W. Colby www.ColbyConsulting.com Contribute your unused CPU cycles to a good cause: http://folding.stanford.edu/ -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav Brock Sent: Monday, August 15, 2005 1:18 PM To: accessd at databaseadvisors.com Subject: RE: [AccessD] Bug Report Hi John Some things for you to try: 1. Remove any line containing Debug.Print from the code of the OnOpen event. This one once consistently crashed an Access XP app for me. 2. Remove any graphics from the form. I've seen this crash an A97 app. Just by moving the object (I don't recall if it was a Line or a bitmap) cured the problem. 3. Read out the form using SaveAsText: Call SaveAsText(acForm, "tfrmClaim", "c:\tfrmClaim.txt") Study the text. Clean possible printer information. Or rearrange some objects (the file contains a checksum but it appears to not be checked when loading). Remove the form from the database, decompile it, compress. Read back the form using LoadFromText: Call LoadFromText(acForm, "tfrmClaim", "c:\tfrmClaim.txt") compile and compress. Further, but this is a long shot, you may try to replace the standard printer with an old trusted "clean" driver like "HP LaserJet II", and/or to reduce the colour setting of Windows to 256 colours. /gustav >>> jwcolby at colbyconsulting.com 08/15 4:56 pm >>> I did not post the bug description, however here is what I sent MS: Dear Sirs, I am a professional developer using Microsoft Access. I have a specific Access front end that has a particular (pretty complex) form - tfrmClaim - that when opened sometimes causes Access to close, no warning. A little background: The issue happens both at my client's office and on my development machine which is a laptop with all the pieces right on the machine. The application is a FE/BE split system, with an MDA holding an application framework (written by me). The application uses classes and Withevents (a LOT). My client uses Office 2K. They have about 40-50 workstations running a pretty good mix of Windows 98, Windows 2K and Windows XP. AFAICT the issue does not occur on Win98 but does occur on Win2K and WinXP. The system is a call center for the disability insurance industry. They search for a claimant, and when found open a very complex form that displays all aspects of the claim. This claim form has about 10 tabs, some of which are hidden. The tabs load subforms when clicked on etc to reduce loading time. All of that information is just background for you to understand the situation. The issue is that the OnOpen event occasionally causes the entire database to shut down, no warning, no page fault screen nothing. Just gone. I have been able to insert debug statements and find where the shutdown occurs. It occurs in the same location every time that the shutdown occurs, at least until you "do something" (developer code wise). Unfortunately because it does not happen every time, it is not possible to step through the code and watch it close, but it is possible to nail it down to a specific line of code whenever it does shutdown. In attempting to troubleshoot this issue, I have done all of the typical decompile / compact / repair, open a new database and import all the objects, etc. One day I spent hours working on it, and watched the shutdown "move" through the OnOpen event until I finally "pushed it out the end sub" and it started closing back in the form that opens this complex form (the search result form) - when control returned to that sub. I thought I had it nailed at that point but no, awhile later it was back to shutting down in the OnCurrent of the tfrmClaim. My client thinks it has something to do with XPSP3, although it does occur (much less frequently) on other Oses. It was happening a LOT on the XP SP3 machines, they backed out the SP3 and the occurrence dropped radically - from every 30 minutes to once a day or so. My dev machine (laptop) BTW is XP SP3 and it happens a lot. I have not attempted to back out the SP3 and don't really want to do so. Also, I have OfficeXP on my dev machine and the bug also occurs under OfficeXP as well. The problem will occur on the first search, or the 3rd search or the 10th search, but rarely less often than every 10 searches - at least on my dev machine. It does not appear to be data dependent, i.e. I see no pattern as to which record(s) triggers the shutdown. BTW, I have "commented out" my application framework such that most of the functionality of the MDA is not being run - just trying to narrow down the issue. There are about a dozen classes that load in OnOpen of the form, classes that use WithEvents to handle groups of controls and cause specific interactions to occur. I have not yet commented all of them out, although if I did there would be no code left to run. ;-) John W. Colby www.ColbyConsulting.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com