JScript is not Java (But Kinda Like JavaScript [LiveScript])
Posted by William Diaz on January 5, 2012
Recently, we began seeing a several complaints about missing menus, missing form fields, and search failures in Internet Explorer after a recent upgrade to a component of our AV suite. One of these complaints came to my attention after one of my co-workers also was baffled by missing menus he could not account for in Kronos, an employee time management application that runs in Internet Explorer and relies on the Sun/Oracle Java platform, despite that fact that Java was reinstalled, along with the browser in an attempt to correct.
In all cases, I found that jscript.dll needed to be re-registered to correct. So the question became “Why didn’t installing Java handle that?” The short answer is Jscript is not Java. Jscript can be thought of as an implementation of the Microsoft Windows Script Engine (think VBScript, too). It is based on an open source programming language, ECMAScript, similar to JavaScript (also once known as LiveScript), which was created by Netscape. Some people like to say that MS Jscript was a rip-off of JavaScript, but this doesn’t hold since it is based on open source scripting language.
This Microsoft KB article states “…JScript is a high-performance scripting language designed to create active online content for the World Wide Web. JScript allows developers to link and automate a wide variety of objects in Web pages, including ActiveX controls and Java programs. Microsoft Internet Explorer is designed to interpret JScript embedded into Web pages.”
Anyways, if you are encountering similar issues and are at a loss to explain, try registering this DLL. In Windows XP, this can be done from a command prompt or the Windows Key+R by typing regsvr32 jscript.
In Windows Vista & 7, you need to do this from an elevated command prompt. There’s also a different version of jscript.dll with IE 9 and different paths to register it depending on the 32 bit and 64 bit flavors of Windows.
-
If you run 32 bit Windows Vista or 7 and IE 8
-
regsvr32 jscript
-
-
If you run 64 bit Windows Vista or 7 and IE 8 in 32 bit mode
-
cd c:\Windows\SysWow64*
-
regsvr32 jscript
-
-
If you run 64 bit Windows Vista or 7 and IE 8 in 64 bit mode (less common)
-
regsvr32 jscript
-
-
If you run 64 bit Windows Vista or 7 and IE 9 in 32 bit mode
-
cd c:\Windows\SysWow64
-
regsvr32 jscript9
-
-
If you run 64 bit Windows Vista or 7 and IE 9 in 64 bit mode (less common)
-
regsvr32 jscript9
-
Here are a few visual examples of this behavior when jscript.dll is not registered:
Missing password field for our remote employee gateway:
Version, Cipher Strength and Product ID are blank or missing in Help > About Internet Explorer:
The Windows XP Search fields are missing:
*It shouldn’t not be necessary to change directory to \windows\system32 to register a system module, since the Environmental Variable in Windows already points here by default. On the other hand, you need to specify the SysyWow64 folder for registering 32 bit modules in a 64 bit OS.
William Diaz said
Ran across a similar issue yesterday but a little bit different. The About IE was blank like in the example but presented a scripting error before opening. Additionally, you could not click in any text box fields, e.g. like search engine fields to type. In that case, the problem was a failed migration to IE 8. Removing IE 8 and reinstalling resolved.