devote / HTML5-History-API

HTML5 History API expansion for browsers not supporting pushState, replaceState
http://spb-piksel.ru
MIT License
1.02k stars 182 forks source link

SCRIPT126: Specified module could not be found #28

Closed zorgster closed 11 years ago

zorgster commented 11 years ago

In IE8 console, I am seeing the following error - and history is not working in IE8:

SCRIPT126: The specified module could not be found. history.js, line 470 character 21

            // This rule for Internet Explorer 8
            if ('execScript' in window) {
                /**
                 * to IE8 override the global properties using
                 * VBScript, declaring it in global scope with
                 * the same names.
                 */
                <em>window['execScript']('Public ' + prop, 'VBScript')</em>;

(prop = "onhashchange"}

The call stack says this function was called from 'initialize' line 836... which was called by Anonymous line 898 .. then Global code line 16.

It did the same with history.min.js - so switched to full to find the problem lines..

devote commented 11 years ago

Hi,

This problem is likely related to the system Windows, it does not work in your system some .dll. I can suppress this error by concluding that you specify a line to construct in try ... catch. But this does not solve your problem.

devote commented 11 years ago

Maybe registering ole32.dll can fix this issue.

Open a command prompt and type regsvr32 ole32.dll

If those don't work, you can also register the following files to fix this issue: regsvr32 oleaut32.dll regsvr32 actxprxy.dll

zorgster commented 11 years ago

Hi thanks for your response.

Well, it was working last week and last night it was not working. And in between I did install Business Contact Manager for Outlook because a client required some custom forms to be made. So it is possibly due to a DLL issue. I have tried regsvr32 (running cmd as administrator (on Win7)) on all three DLLs that you suggest... no luck.

What is the module that it cannot find?

devote commented 11 years ago

I read somewhere that this can happen after installing Business Contact Manager for Outlook, but can not remember where. And what about Win7 I think you should not worry if the user is viewing your site. It is likely that he will do it from Windows XP

devote commented 11 years ago

alternatively, you can try to do the following: regsvr32 vbscript.dll

devote commented 11 years ago

Yes, that's right ... I just did a test. I called the command: regsvr32 /u vbscript.dll Then tried to run IE8 and got the same error that you have. Then I called the command: regsvr32 vbscript.dll and everything returned to normal.

zorgster commented 11 years ago

ah.. of course that is true... re: Win7... I am only setting the website to IE8 to mimic those users who are still on XP.

vbscript.dll isn't having an effect...

The answer might be McAfee... which hasn't been on my computer for a long long time... perhaps installing Business Contact Manager has revealed this hangover from the initial OEM install.. typical that an antivirus program is involved... :-)

The registry entry - HKCR\CLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32 (VBScript Language) is reading: "C:\Program Files\Common Files\McAfee\SystemCore\ScriptSn.20121114134646.dll" not vbscript.dll

The registry entry - HKCR\CLSID{16d51579-a30b-4c8b-a276-0ff4dc41e755}\InprocServer32 (JScript Language) is reading: "C:\Program Files\Common Files\McAfee\SystemCore\ScriptSn.20121114134646.dll" and not jscript.dll

They are pretty hard to remove manually... but I managed to find a program called MCPR.exe (McAfee Program Removal) http://service.mcafee.com/FAQDocument.aspx?lc=1033&id=TS101331

The values have been corrected but I am asked to reboot.

zorgster commented 11 years ago

Ok... now it is working. On starting IE I was asked whether I wanted to set SmartScreen options - and this apparently sets the filter for vbscript.dll and jscript.dll - part of IE10's security. I ignored that for now.

In IE10 - set to IE8 and IE8 Standards - it is working - although I can see the hashed URL in the address bar. Would that be normal?

devote commented 11 years ago

... now it is working.

This is good)

... although I can see the hashed URL in the address bar. Would that be normal?

Yes, in IE8-9 emulation is using the hash-links

zorgster commented 11 years ago

ok.. at least this might be useful for anyone else who also gets this problem... albeit very rarely.. :-) someone trying to emulate IE8-9 on a Win7 PC who had McAfee installed and removed it... but did something that enabled the bug... can't be a common set of circumstances... :-) lol thanks for pointing me in the direction to look for the vbscript.dll.. it was a little more involved in this case than simply re-registering the dlls... i'm happy for this to be closed now... best regards