Robert McLaws: FunWithCoding.NET

Public Shared Function BrainDump(ByVal dotNet As String) As [Value]

News

<script type="text/javascript"><!-- google_ad_client = "pub-4330602465258980"; google_hints = "ASP.NET, VB.NET, C#, C#.NET, WindowsForms, .NET Framework, VS2005, Visual Studio, XAML, WinFX, Windows Workflow, WPF, WCF, Atlas, NetFX3, Visual Studio Orcas"; google_ad_width = 120; google_ad_height = 240; google_ad_format = "120x240_as"; google_ad_type = "text_image"; google_ad_channel ="4997399242"; google_color_border = "B6C9E7"; google_color_bg = "EFEFEF"; google_color_link = "0000FF"; google_color_text = "000000"; google_color_url = "002C99"; //--></script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<!--
-->

You should feel free to challenge me, disagree with me, or tell me I'm completely nuts in the comments section of each blog entry, but I reserve the right to delete any comment for any reason whatsoever. That said, I will most likely only delete abusive, profane, rude, or annonymous comments, so keep it polite, please.

Blogroll

Cool .NET Articles

My .NET Tools

My Builder.com Articles

My MSKB Articles

October 2005 - Posts

Run the ASP.NET 2.0 Development Server From Any Folder

As I blogged about yesterday, I came up with a way to start up the web server that comes with Visual Studio 2005 by right-clicking on the folder you want to serve. Chris Frazier left some great feedback, along with Daniel Fisher.

I think I've solved all the problems that were involved, and there were a few. Besides what I initially talked about, Chris' wrapper solution didn't use the proper virtual path, due to an error in spacing. Daniel's solution went the StringBuilder route for setting up the executable's arguments, which took too much memory. I went the String.Format route, which accomplished the same thing with a lot less code.

I put together an installer that checks for the existence of the webserver executable, copies the wrapper to the .NET runtime directory, and adds the proper registry keys for both Admins and Non-Admins. I've tested it, and it does exactly what I need it to do. Let me know if anyone runs into any problems.

"ASP.NET 2.0 Web Server Here" Shell Extension

I've been doing some web development work again lately, and I haven't wanted to screw with setting up IIS on my virtual machine. The .NET Framework 2.0 comes with a built-in webserver, based on the old Cassini web server. So I wanted to be able to easily set up any directory to have its contents served up on an as-needed basis. The result is an addition to the Windows Explorer right-click menu, as shown below:

This is enabled by a simple modification to the registry. You can take the text below and dump it into a file named "WebServer.reg", and then run it, to immediately get the item in the context menu.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\VS2005 WebServer]
@="ASP.NET 2.0 Web Server Here"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\VS2005 WebServer\command]
@="C:\\Windows\\Microsoft.NET\\Framework\\v2.0.50727\\Webdev.WebServer.exe /port:8080 /path:\"%1\""

There are a couple caveats to this tool, however:

  1. The web server does not randomly assign a port number, so it has to be hard-coded into the registry.
  2. The web server does not automatically assign a virtual directory, so it will always be "http://localhost:port"
  3. A command prompt window will be spawned, and cannot be closed without closing the web server process.

Moving foward, there are a couple of options to fix these issues:

  1. Someone who knows more about variables in the registry can help me fix issues #2 and #3
  2. I can build a wrapper executable that solves all three problems
  3. Microsoft can put in a DCR and fix it before it goes gold in a few days.

#3 is not likely, so I'd love to hear what you think. Hope this trick is useful.

MSBuild Toolkit for Web Projects? It Might Happen.

If what Paul says is true, then I will be able to update my MSBuild Toolkit to handle compiling web projects to .NET 1.1

For everyone that has asked, the current version has not been updated for the VS2005 RC builds. I'm going to put out another version for the RTM build of VS2005 that installs cleaner, solves the "mysterious locking" bug, and has a much better UI. I'm just waiting for the actual release to put it out.

Posted: Oct 19 2005, 02:47 PM by interscape | with 3 comment(s)
Filed under:
More Posts