SpywareBlaster 4.2 - Run-time error '97'

Discussion in 'SpywareBlaster & Other Forum' started by druthers, Mar 31, 2010.

Thread Status:
Not open for further replies.
  1. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    I'm getting this error recently, when attempting to update SpywareBlaster v4.2, running on Windows7x64.

    " Run-time error '97': Can not call friend function on object which is not an instance of defining class "

    When installing and initially updating SpywareBlaster (3-4 weeks ago), there were no no problems. However, all recent update attempts have failed, every time, with this "Run-time error 97".

    I've tried uninstalling SpywareBlaster, deleting all obvious references in the registry, and then reinstalling. However, this same error pattern remains.

    Any suggestions on exactly what "run time error 97" indicates, in this case -- and how to fix this?

    Thanks.
     
  2. javacool

    javacool BrightFort Moderator

    Joined:
    Feb 10, 2002
    Posts:
    3,997
    Hi,

    Haven't heard of that one before.

    Could you please describe the exact steps it takes to trigger the error (i.e. exactly what you click on / do right before it happens), and exactly what you see on the screen at the same time the error occurs? (A screenshot of the error message + the main SpywareBlaster window would be helpful in that regard.)

    Also, do you recall any changes / other program updates / other program installs you may have made between the last time it worked and the first time the error appeared?

    Many thanks in advance,

    -Javacool
     
  3. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Triggering the error only requires clicking on the SpywareBlaster icon, which runs:

    "C:\Program Files (x86)\SpywareBlaster\spywareblaster.exe"

    But all that is seen on the screen is the Windows error message itself -- which was quoted exactly, in my initial post. The SpywareBlaster window never appears now, and the program does not run. . .

    (*) Image:- http://i269.photobucket.com/albums/jj75/druthers24/errorSpywareBlasterv42-runtimeerror.jpg



    Wait, I take that back:- Task manager shows the icon launches not one, but TWO spywareblaster.exe's -- and triggers the Windows error message -- but no SpywareBlaster window appears.

    ...

    Don't know if this is relevant:

    I noticed an old, 2003 Microsoft article about Visual Basic and Run-time error '97':

    http://support.microsoft.com/kb/282483

    Does SpywareBlaster require Visual Basic runtime files? If so, which version?

    Because, one program that I installed (not sure which one) did install an old Visual Basic runtime (2006?) for reasons I didn't understand, or think to be necessary.. Later, when I noticed SpywareBlaster was failing to run, I uninstalled the added Visual Basic library, to see if that would help -- but that didn't change SpywareBlaster's failure to run.

    ...

    Sorry if this appears twice -- the first time did not post...
     
    Last edited by a moderator: Mar 31, 2010
  4. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Additional information:

    As described previously, the SpywareBlaster icon is consistently launching two instances of SpywareBlaster.exe -- but this only produces the Windows error message, not the SpywareBlaster window.

    I'm running Windows7x64 in Administrator mode.

    The only other account on the computer is the (unused) "Administrator" account.

    I've experiment with setting the SpywareBlaster icon Properties to include (nearly) all combinations of:

    ... 1) Run in compatibility mode for WinXP-SP3
    ... 2) Run as Administrator #1
    ... 3) Run as Administrator #1 + Run in compatibility mode for WinXP-SP3
    ... 4) Run as Administrator #2
    ... 5) Run as Administrator #2 + Run in compatibility mode for WinXP-SP3
    ... 6) Run as Administrator #3
    ... 7) Run as Administrator #3 + Run in compatibility mode for WinXP-SP3

    Note: "Run as Administrator" appears in three (3) different places in Icon Properties:

    ... A) Icon Properties > Shortcut Tab > Advanced
    ... B) Icon Properties > Compatibility Tab
    ... c) Icon Properties > Compatibility Tab > Change settings for all users

    ...

    I also tried deleting each of the three references to SpywareBlaster.exe in the Windows Registry, and clicking on the SpywareBlaster icon after each "delete", then checking to see if there were still two instances of SpywareBlaster.exe running in Task Manager -- which there were, after the first delete.

    However, after the second registry "delete", a Windows message appeared stating that "Windows detected that this program did not run correctly... Windows has applied compatibility settings to this program...[etc.]" Windows then replaced the two deleted SpywareBlaster.exe references, as they were before the "deletes" -- as shown by Nirsoft's RegScanner.

    What should I try next?

    Thanks.
     
  5. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Process Monitor finds missing file..

    Process Monitor (from Sysinternals) finds that two (2) instances of spywareblaster.exe run, and then each instance immedaitely (or in 0.0001452 seconds) fails to create a file named wow64log.dll -- at which point (apparently), the Windows "Run-time error 97" error message is triggered.

    ( Process Monitor finds only these two SpywareBlaster events, following a double-click on the SpywareBlaster icon. )

    ZTree definitely proves there is no file named wow64log.dll here -- anywhere on drive C.

    Nor is there a file named wow64log.dll on another drive, booting a different installation of Windows7x64 -- where SpywareBlaster was installed today (where it had never been installed before). SpywareBlaster did not fail to run on that the other drive.. yet (but neither did the first install fail immediately).

    ...

    The three Process Monitor "Event Properties Tab" images have been uploaded to PhotoBucket:

    (Because IMG tags didn't work last time, the URLs are included here also.)

    http://i269.photobucket.com/albums/jj75/druthers24/errorSpywareBlaster-ProcessMonitor1.jpg

    http://i269.photobucket.com/albums/jj75/druthers24/errorSpywareBlaster-ProcessMonitor1.jpg

    http://i269.photobucket.com/albums/jj75/druthers24/errorSpywareBlaster-ProcessMonitor2.jpg

    http://i269.photobucket.com/albums/jj75/druthers24/errorSpywareBlaster-ProcessMonitor2.jpg

    http://i269.photobucket.com/albums/jj75/druthers24/errorSpywareBlaster-ProcessMonitor3.jpg

    http://i269.photobucket.com/albums/jj75/druthers24/errorSpywareBlaster-ProcessMonitor3.jpg

    ...

    Question #1:

    Is it normal for two instance of spywareblaster.exe to be running together?

    Question #2:

    Why do both instances of spywareblaster.exe fail to create the file named wow64log.dll -- to be located in C:\Windows\System32\ ... ?

    ...

    And, how to fix this, or the underlying problem?

    Thanks.
     
  6. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
  7. javacool

    javacool BrightFort Moderator

    Joined:
    Feb 10, 2002
    Posts:
    3,997
    Hi,

    Thanks a lot for the information. :)

    Yes, it is normal to see two "spywareblaster.exe" processes in Task Manager. (This is part of SpywareBlaster's self-protection to help prevent it from being maliciously modified.)

    SpywareBlaster does indeed require the VB6 runtime files, and I suspect that this is the source of the problems you are seeing.

    Please try downloading and installing the latest VB 6.0 SP6 run-times from Microsoft:
    http://www.microsoft.com/downloads/...61-7A9C-43E7-9117-F673077FFB3C&displaylang=en

    (Note: Generally, these are not required on Windows Vista/7 because those versions of Windows ship with the latest run-times. But if a poorly-behaved installer accidentally overwrote the run-times with older versions, the installer above should at least get you something more recent.)

    Please let me know if it fixes the problem. :)

    (Also, if you wouldn't mind, could you please post the names/versions of the software installer that *might* have done this? I'm very interested in trying to reproduce it.)

    Best regards and thanks,

    -Javacool
     
  8. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Re: Process Monitor finds missing file..

    Some news...

    I closed Windows and rebooted into the other Windows7x64, to see if SpywareBlaster would (still) run OK; it did.

    Then I ran Process Monitor while starting SpywareBlaster (a second time) on that drive, and there were nearly 71,000 events recorded that contained the process "spywareblaster.exe" -- and SpywareBlaster appeared to be running just fine.

    I saved the Process Monitor Logfile.PLM while filtered for "spywareblaster.exe" (Logfile is over 32 MB).

    Rebooted back into the first Windows7x64, and repeated the Process Monitor of "spywareblaster.exe". This time, it recorded over 135,000 events containing the process "spywareblaster.exe" -- and SpywareBlaster gave the familiar "Run-time error 97". (A different filter was used this time; accidentally deleted the initial "two results" filter.)

    I also saved this Process Monitor Logfile.PLM while filtered for "spywareblaster.exe" (Logfile is smaller: 4.7 MB).

    Other filters can be applied while viewing these Process Monitor Logfiles from within Process Monitor -- free download:

    http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

    ...

    I'll send zipped copies of the two Logfiles (2.5 MB zip file) to javacoolsoftware.com -- if requested, including the exact javacoolsoftware.com e-mail address.

    Thanks.
     
  9. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Process Monitor Logfiles - and Registry comparisons.

    I installed the VB 6.0 SP6 run-times from Microsoft, as you suggested.

    This didn't immediately fix SpywareBlaster, so I tried a reboot. During the reboot, I decided to try running SpywareBlaster from the rarely-used Administrator account, on the same drive C.

    Here, we find SpywareBlaster runs fine -- using the same system files, on drive C. I saved another Process Monitor Logfile.PLM of this run. (The zip file with three Logfiles is now at 4.6 MB.)

    Next, logging into the normally-used account, SpywareBlaster still fails to run (after the VB6 files update), giving the familiar "Run-time error 97".

    And, trying to run SpywareBlaster using the Admin account's icon .lnk file, from the "non-working" account, results in the same old "Run-time error 97".

    ...

    Also, I've searched for the software installer that may have caused this problem, when it installed an old Visual Basic runtime. However, after re-starting about 20 of the originally-used installer programs, I can find no sign of which program is to blame -- partly because many installers default to a "repair install" when they find the program already exists.

    ...

    Next, I ran Nirsoft's RegScanner and logged all instances of the word "spywareblaster", and saved these as both text files and .reg "exports". Then I logged into the Admin account (where SpywareBlaster works OK), and did the same thing there. Comparing the two .reg exports (I use ZTree's TFC utility) shows many differences, and very likely will reveal the exact problem -- if you know where to look, as you probably do.

    I can also send you copies of these registry files (302 KB zip file)...

    This might be the quickest way to learn what happened.

    Thanks.
     
  10. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Re: Process Monitor Logfiles - and Registry comparisons.

    I've carefully compared the complete "spywareblaster"-containing Registry Exports for both the accounts -- (the account with the "Run-time error 97", and the Administrator account where no error occurs) -- and find there are no (zero) essential registry differences.

    Because the Process Monitor Logfiles are so large that it is difficult to spot any crucial differences... I tried another complete SpywareBlaster uninstall and registry cleaning, followed by a reinstall -- in case I missed something during the previous reinstall.

    However, the newly-reinstalled SpywareBlaster immediately generates the "Run-time error 97" and fails to open its window, exactly as before.

    Question:

    Could the Windows Prefetch file be perpetuating errors from the previous install? --

    C:\Windows\Prefetch\SPYWAREBLASTER.EXE-D7AA4D64.pf

    ...

    Clues to the problem should be "filterable" from the Process Monitor Logfile, by using a different, more-specific filter.

    For example, "Results" that include "NOT FOUND" gives a list of 541 for "NAME NOT FOUND" ( either specific registry keys that were not found -- or failures to "CreateFile", usually specifying DLL files with full paths ).

    Also, many of the files with "CreateFile" + "NAME NOT FOUND"... immediately follow a "QueryOpen" + "FAST IO DISALLOWED" on the same files. (What's with that?)

    However, msvbvm60.dll (C:\Windows\SysWOW64\msvbvm60.dll) receives a "FAST IO DISALLOWED" followed by a "CreateFile" = "SUCCESS".

    ...

    Note:

    Each "spywareblaster.exe" run apparently generates an identical 32,768-byte Temp file -- such as:

    C:\Users\[user]\AppData\Local\Temp\~DF80BCE3A8EDAD3708.TMP

    ...although a few of these files are zero (0) bytes.

    ...

    Note:

    The Event Viewer's Applications Log contains more than forty (40) similar spywareblaster.exe errors, beginning on March 26, 2010 -- the date I first tried to update SpywareBlaster. The most recent error is copied here:

    Event: 1000 - Task Category: (100)
    Faulting application name: spywareblaster.exe, version: 4.2.0.0, time stamp: 0x49de6caf
    Faulting module name: unknown, version: 0.0.0.0, time stamp: 0x00000000
    Exception code: 0xc000041d
    Fault offset: 0x754c4cad
    Faulting process id: 0x134c
    Faulting application start time: 0x01cad22707235129
    Faulting application path: C:\Program Files (x86)\SpywareBlaster\spywareblaster.exe
    Faulting module path: unknown
    Report Id: 48135f09-3e1a-11df-869b-00241d273a8a

    ...

    Bottom line:

    Clues to the problem should be "filterable" from the Process Monitor Logfile, by using another, more-specific filter...

    Shall I send you copies?

    ...
     
  11. javacool

    javacool BrightFort Moderator

    Joined:
    Feb 10, 2002
    Posts:
    3,997
    Re: Process Monitor Logfiles - and Registry comparisons.

    Hi,

    That would be great. :)

    Please send them (zipped) to: bugreports@oursite (where oursite is javacoolsoftware.com)

    Also, the following additional information would be extremely useful:
    -A list of the security/privacy programs you have installed (i.e. anti-virus, firewall, other anti-spyware/malware, security suites, cleaning tools, etc).
    -Whether you have User Account Control (UAC) enabled.
    -A list of the programs (w/ versions, if possible) you installed that may have been the cause (i.e. all of the ones you installed between the last time SB worked and the first time it failed - we can go through and test them all here with a fresh test system to try to reproduce the issue).

    Best regards and thanks,

    -Javacool
     
  12. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    SpywareBlaster runs OK, and updates in Safe Mode

    An update...

    OK, I deleted SpywareBlaster's Windows Prefetch file (off-line) -- but that had no effect.

    Then I found that SpywareBlaster runs just fine -- including downloading all updates -- in Windows "Safe Mode with Networking".

    However, except when in Safe Mode, SpywareBlaster will not run in the primary user account, where the permissions have been upgraded to full Administrator rights. (The UAC is completely disabled.)

    No help is obtained by checking "Run as administrator" -- or "Run in compatibility mode for..Windows XP SP3" (or by checking both) -- in the SpywareBlaster icon Properties...

    ...
     
  13. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    SpywareBlaster DLLs and Handles

    I noticed that Process Explorer has been updated to version 12 ::

    http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

    ( this is not Process Monitor, that I used previously )

    Now, I've run Process Explorer, configured to both: "View > Lower Pane > DLLS" -- followed by: "View > Lower Pane > Handles" ... and saved screenshots with SpywareBlaster running, in these four situations:

    1) the "Run-time error 97" account

    2) the Admin account when running OK

    3) the same Admin account which now has acquired the "Run-time error 97".

    4) the original "problem account", but running OK in Safe Mode

    ...

    Note: The Admin account that was running OK, now has the same "Run-time error 97". This change in behavior began when I set a custom font size for the account, and (also) changed the font sizes for the menus and message boxes (under Personalization).

    ...

    One thing is obvious:

    When SpywareBlaster is running, only the faulting accounts (with "Run-time error 97") show the following, additional DLL.MUI:

    KernelBase.dll.mui

    (which is listed with all of the other DLLs).

    The accounts where SpywareBlaster run OK, do not include the KernelBase.dll.mui -- only the KernelBase.dll -- which appears in ALL cases.

    ...

    I can send a zip file of the (23) JPG screenshots, however it is 6.1 MB in size... Is this too large for an e-mail attachment, which your server will accept?

    ...
     
  14. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    HAVE FOUND THE PROBLEM... APPARENTLY

    ...

    As noted above:

    "The Admin account that was running OK, now has the same "Run-time error 97".. This change in behavior began when I set a custom font size for the account..."

    ...

    The reason I changed the Admin. font size, was to match the custom font size in the account with the "Run-time error 97",
    so the screenshots would "match", and allow an Alt-Tab to "flash" views between account screenshots -- and thereby make the differences stand out.

    The custom font size in the first, "error" account had been set prior to installing SpywareBlaster the first time.

    Therefore, I tried resetting the font size back to a standard size, and logged off, and then logged on (to effect the change) -- and now SpywareBlaster runs OK.

    Apparently, SpywareBlaster only gives a "Run-time error 97" when there is a custom-sized font set for the account.

    ...
     
  15. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    HAVE FOUND THE PROBLEM... CONFIRMED

    ...

    Have reset the font size back to a standard size in the Admin. account, and SpywareBlaster is again working OK.

    Also, with both accounts now working, Process Explorer is no longer listing that "KernelBase.dll.mui" for either account.

    Hope this helps.

    ...

    I would like to return to the custom font size, if the next version of SpywareBlaster will allow.

    Thank you.

    ...
     
  16. javacool

    javacool BrightFort Moderator

    Joined:
    Feb 10, 2002
    Posts:
    3,997
    Re: SpywareBlaster DLLs and Handles

    Could you please describe *exactly* the specific settings you changed, and what values you changed them to?

    Also, what Windows theme do you have enabled?

    Many thanks in advance.

    Best regards and thanks,

    -Javacool
     
  17. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Re: SpywareBlaster DLLs and Handles

    I changed the Menu and Message Box font sizes from 13, down to 12 (in Control Panel > Personalization > Windows Color > Item ).

    However, simply resetting the main, account font setting (in Control Panel > Fonts > Change font size > Set custom text size (DPI) ) ... from a custom 163%, back to a standard 150% was the key.. This was the only important "reset back" change I made -- and this immediately "fixed" SpywareBlaster, and eliminated the "Run-time error 97" error messages.

    Note:: Immediately, when SpywareBlaster started working (again), the following file no longer loaded, as shown by Process Explorer (in "View > Lower Pane > DLLS") ::

    KernelBase.dll.mui ... ( C:\Windows\SysWOW64\en-US\KernelBase.dll.mui )

    I believe this "extra layer" was generating those "Run-time error 97 - Can not call friend function on object which is not an instance of defining class" ..error messages.

    ...

    Windows Theme? ... Just the "default", no Aero stuff, and with most "special effects" disabled (in Control Panel > System > Advanced System Settings > Performance Settings > Visual Effects > Custom ). ... The DEP setting is "...for essential Windows programs and services Only".

    ...
     
  18. javacool

    javacool BrightFort Moderator

    Joined:
    Feb 10, 2002
    Posts:
    3,997
    Re: SpywareBlaster DLLs and Handles

    Hi,

    Many thanks for your exceedingly kind help in tracking down this issue. :) With the above information, I was finally able to reproduce the issue here, and it should be fixed for the next release of SpywareBlaster. :cool:

    (Of note: Although I could not reproduce the exact error message you are seeing, I was able to reproduce a crash/failure to open SB with the setting change you specified on Windows 7. Why it just silently failed on my testing machine and not yours I don't know - perhaps it's a combination of different versions of support libraries + third-party software.)

    Best regards,

    -Javacool
     
  19. druthers

    druthers Registered Member

    Joined:
    Mar 14, 2008
    Posts:
    17
    Re: SpywareBlaster DLLs and Handles

    --- javacool wrote:

    ... Although I could not reproduce the exact error message you are seeing, I was able to reproduce a crash/failure to open SB with the setting change you specified on Windows 7. Why it just silently failed on my testing machine and not yours I don't know - perhaps it's a combination of different versions of support libraries + third-party software.

    >

    --- reply:

    Perhaps those "Run-time error 97" messages appeared because I had previously tweaked many of the Windows settings to increase the number of "error dialogs" and alerts, etc., -- using the "Local Group Policy Editor" ( Run: gpedit.msc ) -- where some of these settings are found under:: Local Computer Policy > Administrative Templates > System > Troubleshooting and Diagnosis > Application Compatibility Diagnostics.

    I was thinking of mentioning this on the other thread ("Spywareblaster will not run on Win7") -- where no error messages appeared, either... (as you experienced).. Chances are, your "fix" will work for that problem too.

    ...
     
  20. javacool

    javacool BrightFort Moderator

    Joined:
    Feb 10, 2002
    Posts:
    3,997
    Re: SpywareBlaster DLLs and Handles

    Please see: SpywareBlaster 4.3 Released

    Best regards and thanks,

    -Javacool
     
Loading...
Thread Status:
Not open for further replies.