Script Class Browsing Utility

Sharing a minor update to my Web Development Helper tool that fixes some bugs, and also provides an early version of a new feature: a script class browser, right in your browser!

It has been a long while since I updated my Web Development Helper utility, while I’ve been busy on Silverlight and various other projects. A note of thanks goes to all those who’ve sent me email about it in the meanwhile.

There was one bug in particular that was hitting a number of people that prevented them from using it on IE7 on Vista (supposedly if UAC was turned off). I’ve fixed that (supposedly), along with some bugs in the JSON viewer that were logged or sent my way. I am sure there still are bugs. Do let me know, even if sometimes it feels like forever before it gets fixed.

That said, the main reason for this post was to introduce version 0.8.5.0, with its new Script Class Browser feature. This feature is based on Eilon’s initial class browser implementation. The class browser allows simple viewing of types and namespaces implemented and registered using the Microsoft ASP.NET AJAX (as well as Script#) OOP pattern for JavaScript. Below is a screen shot.



If you’d like to try it, browse to a page that uses ASP.NET AJAX such as a sample page for the Ajax Control Toolkit, once you’ve picked up the latest build and installed it – just select the “Script Class Browser” command off the Script menu in the tool’s window.

Another interesting tidbit: I got a chance to introduce this tool in Windows Developer Power Tools, a book that compiles a huge selection of free developer tools. Lots of interesting tools out there...

Posted on Tuesday, 7/24/2007 @ 1:28 PM | #Projects


Comments

9 comments have been posted.

Morten

Posted on 7/24/2007 @ 3:42 PM
WOW! I'm loving that script browser already!

scott

Posted on 7/26/2007 @ 8:26 AM
Great tool - thanks a ton for all of your hard work on this utility. It's proving to be quite useful :-)

hu

Posted on 7/28/2007 @ 8:43 PM
the book is very good ,i have readed it . are there any good book talk about MS AJAX ?

penyaskito

Posted on 7/29/2007 @ 5:08 AM
I tried to use the tool for looking at the classes of a opensource framework that uses OOP, OpenLayers, but it doesn't work.

Anyway, this will be very useful for my ASP.NET Ajax development, Thanks!

Scott McCulloch

Posted on 8/12/2007 @ 2:26 AM
Thanks for sharing Nikhil, I enjoyed your presentations at tech-ed Australia.

Andrew

Posted on 8/15/2007 @ 12:14 PM
I'm having installation problems on Windows XP/IE 7. I install it, but then there's nothing in the toolbox. If I go to Tools-->Toolbars-->Explorer Bar there's an entry there, but when I open the window all I see is a blank grey panel. Perhaps this is due to the multi-account issue already reported in the bugs section (i.e., on a multi-user box the toolbar will only show up for the user who installed it). Then again, I'm not switching accounts before or after the installation. I'm a member of Local Administrators, so perhaps it thinks that the Administrator account was the one that installed it. Anyways, hopefully I can get this resolved as it looks like a very useful tool. Thanks!

Nikhil Kothari

Posted on 8/15/2007 @ 7:33 PM
Andrew, the user account issue should be fixed with the latest release, since everything is now registered at machine level. The fact you get a grey panel is indicative of the plugin loading... it also indicates the CLR is failing to load. Do you have .NET 2.0 installed? Is there something else running in your browser that is loading an earlier version of the CLR? This would be a possible issue, given only one version of the CLR is loadable at any one time.

gis_dur

Posted on 8/26/2007 @ 9:22 PM
Windows XP SP2 Home Edition + IE 6 + .NET Framework 2.0 Runtime installed. I had the same problem as Andrew and there was a message in the event log something like this: "Cannot load VC8 runtime." (sorry for the lack of accuracy; I don't remember the exact message since I don't have the machine nearby now, and my logs are in Japanese anyway) I figured that there was some runtime missing particular to VC8 (although I had .NET Framework 2.0 Runtime installed), so I Installed VC++ 2005 Express Edition(thank god it was free), and now it works fine. Hope this may be a clue.

Kiran A.Tikare

Posted on 9/4/2007 @ 8:55 PM
Hi Nikhil, I downloaded webdev Helper build 0.8.5.1 and installed it. When i tried to open script class browser it raised an error, whose contents is as follows

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentException: ObjectForScripting's class must be visible to COM. Verify that the object is public, or consider adding the ComVisible attribute to your class.
at System.Windows.Forms.WebBrowser.set_ObjectForScripting(Object value)
at nStuff.WebDevHelper.UserInterface.ScriptTools.ScriptBrowserForm..ctor(Object rootObject)
at nStuff.WebDevHelper.UserInterface.BHOUserInterface.OnCommandScriptClassBrowser(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
nStuff.WebDevHelper.UserInterface
Assembly Version: 0.5.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_32/mscorlib/2.0.0.0__b77a5c561934e089/mscorlib.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Accessibility
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.


Is any fix available for this?

Thanks and Regards,
Kiran
The discussion on this post has been closed. Please use my contact form to provide comments.