MSE – Microsoft Script Editor 71

Microsoft Script Editor is probably one of the lesser known tools that can really make a difference when it comes to developing web applications. MSE is a debugger, much like Visual Studio and it comes bundled with Microsoft Office. It should not be mistaken for Microsoft Script Debugger which is a piece of crap compared to MSE. MSE got all the nice features Visual Studio has without the bloat.

MSE is installed at %ProgramFiles%/Microsoft Office/OFFICE11/MSE7.exe. Older versions might be installed at a slightly different location and if you cannot find it just search for mse. If you still cannot find it and you have an old Microsoft Office CD lying around you can install it from there. If you select custom install or add remove components it should be located under Microsoft Office / Office Tools / HTML Tools /Web Scripting / Web Debugging.

By default script debugging is disabled in IE but you can enable it by
unchecking Tools / Internet Options... / Advanced / Disable script
debugging (Internet Explorer).

So how do you use this mysterious tool? MSE allows you to debug exisiting IE processes but more importantly it is triggered by the debugger statement (which by the way also works if you have Venkman opened for Mozilla). If you already have IE up and running or you can’t edit the source files of the web application you can get into the debug mode by opening the Debug / Processes dialog and from there select the process to attach to.

Once in debugg mode you can step through the program to see what is going on. Out of the box not much is shown but things like local variables, watch, running documents, call stack and more is available to you under Debug / Window.

  • M. Schopman

    And which enables you to unraffle what “object expected” really is about :)

  • http://erik.eae.net Erik Arvidsson

    …and figure out which file the error really occured in.

  • http://www.pontukom.com Guilherme Blanco

    .. and also… dicover which object doesn’t support this method or property.

  • http://www.nczonline.net/ Nicholas

    Unfortunately, I still run into the mysterious disappearing “Debug” menu in IE. It’s there, it’s gone, it’s there, it’s gone. I wish they could fix that too.

  • ckikilwai

    how do i remove this program?

  • mikezang

    Hi
    I found I can’t use MSE.exe to debug any in win2000. A “Interface not supported” is popuped when I opening the Debug / Processes dialog, can you tell me why? What can I do? I need it to develop my project.

    Thanks a lot.

  • http://erik.eae.net Erik Arvidsson

    I remember getting this problem once. I think I reinstalled windows at that time but I know there is a simple solution to this but I don’t remember it. Did you look at the MSFT knowledge base?

  • mikezang

    Thanks for you reply. Can you give some agguestion? I could’t find any useful information, I spent one day, and maybe this night until morning.

  • mikezang

    Hi, Erik
    Thank you very much!
    Your message gives me a prompt, so that I reinstalled office wnd IE, now I got it!

  • Danny Medina

    sometimes when I log into sites like yahoo or dish net work or other sites in Explorer, I get this messae that pops up- a run time error has occured- do you wish to debug : line :0 error: ‘sp is undefined if I say yes, then 2 choices to choose Script editor appear but then nothing happens after all these messages appear, basically the problem has not been corrected and it is anoying. HELP!!!

  • http://erik.eae.net/archives/2005/07/04/21.49.50/#comment-5232 Michael Worley

    Can you please tell me how to remove it? It keeps popping up when I am on the Intenet including when I want to review articles and print them. I believe it is not woking right, since it keeps giving me “false error messages.” It states that I have an error in my script, and I do not, and it asks me if I want to continue with the script. No matter what I do, answer Yes or No or hit the red box at the top to delete it then goes away, only to reappear again and again.

  • http://erik.eae.net Erik Arvidsson

    Michael: Go to IE options and disable script debugging.

  • Michael Schall

    I would suggest using the new Visual Web Developer 2005 Express Edition for debugging. It is a free download and was written this millennium.

    http://msdn.microsoft.com/vstudio/express/default.aspx

    The debugging tools in this are far nicer than the older MSE debugger.

  • Christine Vacher

    Michael,

    I am trying “Visual Web Developer 2005 Express Edition”. I expected it to be an alternative to MSE, but I feel disapointed.

    Apparently, it doesn’t support client script debugging or I don’t know how to enable it: When editing an HTML file, the Debug menu is empty.

  • http://erik.eae.net Erik Arvidsson

    I agree… Visual Web Developer 2005 Express Edition does not seem like an alternative to MSE. I cannot get it to debug scripts.

  • Ignacio

    I have a problem allowing users without administrative rights to work with it, even though i gave them full rigths over the whole msoffice foler, what should i do¿?

  • http://www.prudnikov.com Vladimir

    I have next error.
    “Howevwr, no debuggers are installed that can debug this exception. Unable JIT debug.”. How can I enable this JIT debugger?

  • http://louthanglers.8k.com Brendan

    If you go to C:\Program Files\Common Files\Microsoft Shared\VS7Debug, there are a couple of utilities that might help with JIT debugging. Try MDM /dumpjit to see your current JIT settings, and if you type vs7jit -p you can set JIT on for that process.

  • Jeff Papineau

    Vladimir,

    try this URL on my web site. It explains some troubleshooting you can do with the registry to get MSE working in this case.

    http://www.ajaxhead.com/javascript/debug_javascript.html

    Also, there is a bug in MSE; often the debugger will become unattached from the current window/document you are working on. Workaround is to File:New Window and close the old one; the debugger will now be reattached.

  • Jeff Papineau

    Nicholas, the disappearing “Debug” menu is the same problem I have defined just above. Open a new window, the debug menu reappears and the debugger is now again attached to your environment.

  • Kaye

    All of a sudden, IE on my computer seems to be unable to find MSE. The exe is there, in the path you showed, and it opens if I double-click it, but when I am prompted with the request to open the debug window after an error has occurred in a script in IE, I say “yes” a few times, and then nothing happens. Could anyone tell me where IE looks for attached debugging tools? Is there a key in the registry that might have been corrupted and could be fixed? As a web developer, I really need to have MSE correctly working on my machine.
    Thanks.

  • Jeff Papineau

    Kaye,
    as I mention above, and I repeat, this is a very simple bug workaround:

    When the MSE debugger becomes unattached and no longer works:

    1) open a new window from the existing old window. (File:New Window)
    2) Close the old window.

    Your debugger is now in working order. Notice, under the View menu, the “Debugger” entry had disappeared in the old window and is now present in the new window. If you get the error again, your debugger will attach normally and start a debug session now.

    Of course, this is a nasty bug, but the workaround is so simple, easy, effective and non-time consuming, I don’t even think about it any more.. but you do have to know the workaround.

  • Kaye

    The reason why I asked is that what I experience is different from what you describe, and the workaround you suggest is in fact not effective. The “Debugger” entry in my view menu is higlighted, but if I try and open it nothing happens. When an error occurs in a script I am prompted with the request to debug it, and if I click “Yes” either nothing happens, or it seems to go on executing and stop at the following error (because the line number changes), till the last error, and then it simply gives me the message you’d get if you didn’t have a debugger installed. Any ideas?

  • Jeff Papineau

    1) Look at your Advanced Options and turn off “Friendly Error Messages”. Sounds like you have enabled Script Debugging in the Advanced options already.

    2) Try to fix your registry like this (your path may be different):
    “C:\Program Files\Common Files\Microsoft Shared\VS7Debug\vs7jit.exe” /RegServer

    As detailed in my doc, you have to log out and log back in to make sure the OS rereads the registry to see the results of this.

    3) Make sure the debugger is really still there; someplace like:
    C:\Program Files\Microsoft Office\Office10\MSE7.EXE

    (Your path may vary based on what version of Office you have, etc.)

    4) Just install a different version of Office. I have seen Office2003 be less bug prone than 2002. And right now, I have a beta of Office2007 I found laying around on the net; MSE debugger still works great.

    When in doubt, reinstall Office. And make sure you have the most recent version of IE6 installed too.

    5) Try the debugger keyword in your script and see if that works any better. Also try “Break at Next Statement” in the debugger menu and click on a javascript event driven element. Does that work at all? If you can get it down to one thing that is not working while all else works, that might help solve your problem.

    6) Usually the problem is that the debugger won’t auto-attach to the browser. You can actually manually attach and see if that works. If it does work, then you know it’s just an auto-attach problem and at least your debugger is manually attaching and works at that point. This helps to isolate your issue down to something more managable.

  • Jeff Papineau

    One other comment for Kaye:

    -Sometimes the debugger will issue a warning “could not follow code in this function”, something like that. It does this sometimes with closures, where there are anonymous functions. Usually if you click on “Step Inside” it will actually follow the code into the anonymous function just fine.

  • Dan

    Was nice to know this was right here the whole time….

    Cool,.

  • Pingback: Continuing Intermittent Incoherency » IE At Arm’s Length()

  • http://www.jonathanboutelle.com/mt/archives/2006/01/howto_debug_jav.html Jonathan Boutelle

    I wrote a quick tutorial on installing and using MS Script Editor. Handy stuff (though it is bizarre that it’s a part of MS Office).

  • Pingback: Ronald Hernandez()

  • Pingback: Patricia King()

  • Jim Deehr

    Jeff, how to attach mse to browser manually?

  • Pingback: Bealers.com - » Debugging Javascript in IE7()

  • John Korchok

    I found a useful PDF on enabling Script Editor at
    http://digital.ni.com/public.nsf/3efedde4322fef19862567740067f3cc/c29cbaf07db2b93786256f09002fe35b/$FILE/Application%20note_Debug_SUD_DataPlugin_engl.pdf
    (Google “Application note_Debug_SUD_Dataplugin_engl.pdf”)

    It had a good tips about editing the registry and manually attaching a process that helped me get it running.

  • ric

    MSE has a really annoying bug in it where, when you attach to the IE process, it shows no running documents. This has happened to me on numerous occassions on different machines using different operating systems and even with different versions of IE.

    So while it may be a useful tool, it is only very rarely a useful tool and more often than not a frustratingly useless tool.

    Shame, typical Microsoft, nearly there, but just not quite…

  • Jim

    I’m trying to use the MSE and I get the prompt “do you want to debug?”. It goes into the editor/debugger but whenever I try to edit, it keeps telling me that it’s read-only. Is there anyway to edit the file while in debug mode?

    Thanks,
    Jim

  • Pingback: Lukav’s Weblog » Blog Archive » It turns out Microsoft has javascript debugger for IE, but quess what.()

  • http://arapehlivanian.com Ara Pehlivanian

    Thank you! I’d always taken MSE for granted until I reinstalled my system and lost it. I never knew that by selectively installing Office apps I would inadvertently be leaving MSE out. Glad to have found instructions on getting it back because MSD is a piece of junk.

  • Pete Brunet

    Here is more good info on MSE, especially on setting up the various windows:

    Go to http://developer.yahoo.com/yui/theater/ and look at the third item in the second column, Douglas Crockford — “Advanced JavaScript”. Download the PPT file and look at slides 67-70.

  • Charles Cloud

    I continue to get an error message asking if I want to debug. Then when I try to, the message says there is an objection. Help information suggests that under “debug” there are debugging tools which need to be installed. However, no such tools are listed. The only way to proceed is to stop the so called debugging and wait until the next time the message closes a program. Help

  • Pingback: Error -2147418094 - Zimbra - Forums()

  • lydia

    i was minding my own business one day then suddenly this thing popped up asking me to debug using microsoft script editor. what is debug? why is it happening? when i press ok, it stopped and said that something is null and not an object. leaving me no choice but to press break. what is break? but it is just hanging there and i can’t use my program. and i don’ t understand what the whole thing is about. please help….

  • Pingback: Internet Explorer 7 Javascript Debugging | JarrodGoddard.com()

  • Justin H Haynes

    So suppose one wants to debug a Jscript .js file called from wscript or cscript that takes arguments. How can one run this in a debugging environment such that arguments can be plugged in and execution can be controlled from the debugging environment?

  • Justin H Haynes

    Nevermind:
    http://support.microsoft.com/kb/308364:

    1) wscript.exe //d //x

    and

    2) After a debug condition exists, the following registry key determines which debugger will be used:
    HKEY_CLASSES_ROOT\CLSID\{834128A2-51F4-11D0-8F20-00805F2CD064}\LocalServer32
    The script debugger should be Msscrdbg.exe, and the Visual InterDev debugger should be Mdm.exe.

    If Visual InterDev is the default debugger, make sure that just-in-time (JIT) functionality is enabled. To do this, follow these steps:
    1. Start Visual InterDev.
    2. On the Tools menu, click Options.
    3. Click Debugger, and then ensure that the Just-In-Time options are selected for both the General and Script categories.
    Additionally, if you are trying to debug a .wsf file, make sure that the following registry key is set to 1:
    HKEY_CURRENT_USER\Software\Microsoft\Windows Script\Settings\JITDebug

  • Nathan

    Please Help, I dont know what the MSE Script is to “Close the Active Window” Could any 1 help me please, I’ll give you $10! If not i’ll give you it anyways

  • Mathieu

    Hi everyone,

    I need to debug some JS on a web app on IE. I installed MSE. Any process I try to attach to MSE, it says that an other script debugger is already attached to this process.
    I previously installed companion.js, might be related ? I tried to disable companion.js in the plugin menu of IE, but…doesn’t work. I don’t know how to uninstall this crap by the way.

    Thank you,

    Mathieu

  • Deborah McNeely

    Eric, Thanks!The script debugging info written in plain english solved some nagging problems easily! Thankyou very much. In return I would like to offer you my knowlege in Natural Healing. Please write with any health problems you are stumped on. Sincerly, Deborah

  • Mark

    I am constantly getting a runtime error. The error occurs on over half the web pages that I visit and it happens on practically every website. The message is copied below and the program location that causes the error is copied below the error message. The debugger stops at the line below where the script tries to call the SetQuirkModes() function. Anyone have any ideas how to prevent this from happening. This also happens on web pages that I am developing where I need the debugger to be running all the time, so I can’t disable debugging.

    “Microsoft JScript runtime error: Object doesn’t support this property or method.”

    function ParseDoc(doc)
    {
    var aRules = GatherRulesFromDoc(doc);
    collSelectors = parser.Parse(aRules);

    // Set quirks mode if necessary
    if(“BackCompat” == doc.compatMode)
    {
    for(var i = 0; i < collSelectors.Count; i++)
    {
    collSelectors.item(i).SetQuirksMode(true);
    }
    }

    }

  • Pingback: Have JavaScript, Will Travel | ara pehlivanian—Web Standards, Web Culture, Web Everything.™()

  • http://www.studyspanishperu.com/josekatech Josekus

    Long ago i was playing with the conf of my IE 6.0 and then i couldn’t use the debugger coz it says that it wasn’t installed. Well for all the people having the same problem, the solution is not playing with the Register (via regedit, nu nuu, bad, bad), i reinstalled Microsoft Office 2003, but ONLY selecting the HTML EDITOR tool ( you have to choose the manual installation and only choose HTML EDITOR TOOL, located near the last two options on the listtree, and presto!!!. Ok its not the most killing comment but maybe i can help somebody with this.