Spread the love! TechSpot Tech Gift Shortlist 2017

Memory reference errors on closing programs bug?

By Spudgun ยท 8 replies
Mar 19, 2006
  1. Hi,
    I'm running winxp pro and just recently I have been getting an odd problem on certain applications (not all) when closing them. Basically, on closing the programs an error message pops-up with "the instruction at ** referenced memory at **. The memory could not be written" message. The ** changes with each application this affects. Otherwise all programs seem to be running fine, so though annoying this isn't a critical problem as yet (touch wood).

    I've looked up the error at microsoft via event veiwer (which this bug does affect) and all it gives is a generic:
    "Explanation: The program could not load a driver because the program user doesn't have sufficient privileges to access the driver or because the drive is missing or corrupt."

    The programs this affects (so far) are anything in administrative tools, user accounts, photoshop and FlashFXP. There's bound to be more but so far all other I've tried are still error free (firefox, outlook, word, excel etc)

    Also, if I start up in safe mode there's no problem, affected progs close fine, so I cant see this being a hardware memory issue.

    At my end and with no luck I have done full virus/spyware scans with latest definitions (nowt found), deleted & restored pagefile, and I tried a system restore but good old microsoft sent down a "software distribution package" via automatic updates a few days back that seems to prevent my rolling back anywhere before that date which kinda makes that sytem restore pointless but nevermind. Also seems possible that update is what kicked off this problem as it never occurred before then.

    One other thing is I often use "Regcleaner" to clean up my registry but now that crashes my comp (restarts) during the auto clean-up so that would seem to be related (I have another registry cleaner installed that seems to still work fine atm, but that one isnt so thorough) Again, regcleaner works fine when in safe mode.

    Anyways, thanks in advance to anyone who may help as I cant think of anything else at my end.
  2. Tedster

    Tedster Techspot old timer..... Posts: 6,000   +15

    run memtest 86 to check your memory.
  3. Spudgun

    Spudgun TS Rookie Topic Starter

    I will give that a try, but I can't see that being the issue when I can work with large image files without any problems at all, and like I said this error does not occur at all when is safe mode (if this were hardware shouldn't it happen then too?)
  4. Spudgun

    Spudgun TS Rookie Topic Starter

    Just to update: Ran memtest, no errors found.
    Still no idea what is causing this.
  5. Spudgun

    Spudgun TS Rookie Topic Starter

    Oh well, tried another half a dozen different ideas I've found on the web with no luck so I've opted to simply disable all error messaging via the registry for now.

    Have back-up everything important so if this problem is symptomatic of something more serious down the line a re-install wont be such a big issue.

    I'll check back every now and again to see if anyone else has a similar problem and have a better way around it and if so then my thanks in advance.
  6. Tedster

    Tedster Techspot old timer..... Posts: 6,000   +15

    your hard drive may be corrupt. Run a registry repair program like norton systemworks 2003
  7. Spudgun

    Spudgun TS Rookie Topic Starter


    Finally figured out the problem!!!
    After receiving a couple of emails from complete strangers saying messages I'd sent them (which I hadn't) had been bounced for their content I found out my pc had been infected with what must be a newish virus as none of the AV programs I have tried detected it at all (AVG/Bit-Defender/Kapersky & Norton).

    Only figured this out finally from checking to see if I might have a keylogger and the detection program indicated a log file in Windows was being updated suspiciously and sure enough I could see a file named "2007key.log" in my main Windows folder.
    Anyways, I fired up a dedicated process watcher and found a suspicious dll file named 2007key.dll was running attached to all the affected programs, however I couldn't find that dll file on searching for it nor see any service running that had launched it. My AV program couldn't find it to scan it either.

    Next step was to start up in safe mode and sure enough I could now see the 2007key.dll file along with another named "2007.exe" (displayed with a 'help' icon) in Windows. I deleted all 3 files then checked services again and I could now see listed an entry simply named "F" that launched the 2007.exe program on every start-up. What is extra nasty about this one is the exe and dll file are hidden completely from explorer windows after a normal start-up (no matter what settings you scecify) so no AV programs seem able to detect it while running. Only way to locate and get rid of it is the manual safe mode method.

    Anyways, my comp is now free of this virus, the memory error has gone at last, and I have changed every password I can think of in any sensitive place I use them.

    So hopefully this may serve as a heads up to others: check if there is a log file being made in windows with the same or similar name and you may have this nasty little file too.
  8. Tedster

    Tedster Techspot old timer..... Posts: 6,000   +15

    run your anti-virus and several anti-trojans just to be sure after booting in safe mode and turning off system restore.
  9. Gitan

    Gitan TS Rookie

    almcneil has just replied to my similar query, I would like to know how you are doing after you got your problem fixed.

    This error message is misleading to non-programmers/engineers. It's simply a programming error.

    I used to be a high tech engineer and know that error message all too well. When programming, we often use what are called "pointers". They are used to directly access memory. A "pointer" simply holds a memory address or location where a value is stored. When you reference the pointer, you read that memory address/location. When the programming gets intense and complex, we start manipulating the pointers rapidly, adding and subtracting values and offsets. Inevitably, we make a mistake and the result is the program attempts to access a location where where is no memory (invalid address.) Address 0x00000000 is called "NULL" in programming terms and nothing exists at NULL. In fact, when you make a mistake manipulating a pointer and the result would be a negative number, the Operating System lists it as NULL (0x00000000)

    Some program on your comp has a bug in it. It's calculating a negative address or simply references NULL by mistake. You need to find out which program is causing this error.
Topic Status:
Not open for further replies.

Similar Topics

Add New Comment

You need to be a member to leave a comment. Join thousands of tech enthusiasts and participate.
TechSpot Account You may also...