Site Contents

Intro & News

E-mail Contact

RSS 2.0 Feed

Development

Developer Books

Developer Links

Developer Tools

Microsoft Links

Check .NET Version

Comment Reflower

Region Tools

NDoc 2.0 Alpha

Miscellaneous

Other Links

Other Software

Subscriptions

Projects

Tektosyne

Hexkit

Star Chess

Civilization


Microsoft Links

This page lists a couple of useful locations on Microsoft’s labyrinthine website, ordered by category. All listed software packages are available as free downloads, unless otherwise noted.

Languages & SDKs

  • All Microsoft Visual Studio 2010 Express editions are available as free downloads, unlike their bigger cousins. They do have two major limitations: each edition can only handle a single programming language or application type, and you cannot install any kind of add-ins. Still, they are very nice free IDEs if you can live with those restrictions.
  • Visual Studio 2010 shipped before the Help team was quite done with the new offline help viewer, so your offline installation of the MSDN Library will show up in a simple browser window. Until Microsoft makes a proper help viewer available, I recommend the free H3 Viewer by The Helpware Group.
  • The new Microsoft Silverlight release was not quite ready for VS2010 either, but the Microsoft Silverlight 4 Tools for Visual Studio 2010 are now available as a separate download.
  • The Visual Studio Gallery offers plenty of useful IDE extensions and components, most notably the Visual Studio 2010 Productivity Power Tools. Among many other things, this comprehensive package includes a revamped Solution Navigator, a Quick Access dialog, and the redesigned Document Well 2010 Plus (with additional hidden options).
  • How to enable thumbnail previews in Visual Studio 2010, a nice UI feature that is disabled by default for netbook compatibility.
  • The Microsoft Windows SDK 7.1 for Windows 7 and .NET 4.0 comprises both the former Platform SDK and the .NET Framework SDK. Aside from native and managed code libraries, this includes compilers for C++, C#, Visual Basic, and JScript, plus various tools, samples, and the MSDN Library documentation. If you can live without an integrated development environment, this is all you need to develop Windows applications.

    If you don’t have VS2010: You must download and install the .NET Framework 4.0 prior to installing the SDK. The Windows SDK requires the complete framework (“full setup”), not just the Client Profile that is installed by Windows Update. Near the bottom of the download page you’ll find a link to the full package instead of the bootstrapper.

    If you do have VS2010: Visual Studio 2010 comes with version 7.0a of the Windows SDK. The current version 7.1 does not upgrade the existing installation but rather installs side-by-side. I recommend that you get version 7.1 anyway because it includes several tools that are neither part of VS2010 nor available elsewhere, in particular the WPF Performance Suite for .NET 4.0 and FxCop 10.0 (which is actually a minor update from 1.36).

  • Microsoft F# is a functional .NET programming language based on ML, or rather OCaml. F# ships with Visual Studio 2010 but if you intend to use the language you’ll also want to download the F# PowerPack on CodePlex.
  • Visual Studio Professional includes the Microsoft Macro Assembler with complete documentation. The latter is also available at the MSDN Library but MASM itself isn’t. However, you can download a free edition for non-commercial use if you have Visual C++ 2005 Express Edition installed.
  • Windows PowerShell is a command-line shell for Windows XP and later that sits on top of CMD.EXE and utilizes the .NET Framework to provide an extremely powerful object-oriented scripting language. PowerShell scripting effectively supersedes traditional batch files as well as the somewhat obscure Windows Scripting Host technology. Moreover, the shell provides an interactive .NET execution environment, allowing you to instantiate objects and invoke methods directly from the command line.

    PowerShell 2.0 comes preinstalled on Windows 7 and Server 2008 R2, and is available as part of the Windows Management Framework (Core) for users of earlier Windows versions. PowerShell 1.x and 2.0 both reside in the folder C:\Windows\System32\WindowsPowerShell\v1.0 but you the built-in dictionary variable $PSVersionTable shows which version is installed.

    Additional downloads include the official PowerShellPack, which is also part of the Windows 7 Resource Kit, and the PowerShell Community Extensions. Visit Scripting with Windows PowerShell at the Microsoft Script Center for more information.

Other Developer Tools

  • The CLR Profiler is a tool that records managed memory allocation while your .NET program is running. Although this profiler does not measure execution speed, optimizing memory allocation is usually a necessity for improving the overall performance of an application. Note: The CLR Profiler only supports .NET 2.0 through 3.5 SP1.
  • The Debugging Tools for Windows may be helpful for low-level programming. The download package includes a stand-alone debugger that can be used to debug applications, services, device drivers, and even the operating system itself.
  • Steve P. Miller’s Dependency Walker is a very useful program that shows all libraries required by an executable. This utility used to come with the Platform SDK but I cannot find it in my current installation. The link provides a separate download and Miller’s FAQ on the utility.
  • Microsoft FxCop analyzes your .NET assemblies and checks them “for conformance to the Microsoft .NET Framework Design Guidelines”. Thanks to oversensitive and buggy rules FxCop reports way too many spurious “defects”, even on Microsoft’s own libraries. After disabling the offending rules the tool is actually quite useful, however.

    FxCop is part of Visual Studio 2010 Premium and Ultimate, but a limited stand-alone version comes with the Microsoft Windows SDK 7.1 for Windows 7 and .NET 4.0. FxCop releases are announced on the Code Analysis Team Blog.

  • Very useful for Visual Studio users: Microsoft’s keybinding reference posters for all Visual Studio 2010 languages, or alternatively for Visual C++ 2008, Visual C# 2008, and Visual Basic 2008 in PDF format. Note that Visual Studio defines additional keybindings that are missing from these posters, probably for space reasons.
  • Since much of the .NET Framework 1.x/2.0 libraries were actually wrappers around existing Win32 functions, Microsoft created this handy Win32 to .NET Framework API Map which shows equivalent calls in both APIs. Note that the “Foundation” APIs added to .NET 3.0 are mostly written in managed code, without any Win32 counterpart

CodePlex & Code Gallery

This section lists a few interesting projects found on Microsoft’s CodePlex and Code Gallery websites. These are repositories for open- and closed-source software related to Microsoft products, respectively.

  • The Base Class Libraries site offers sample, previews & prototypes from the BCL Team.
  • The CLR Security Team provides algorithms for encryption and random number generation.
  • CodePlex.Snippets is a snippet collection for VS2008 by the C# Team, and Visual Studio Snippet Designer lets you make your own snippets.
  • The MSBuild Extension Pack automates over 300 common tasks for MSBuild.
  • The Meta.Numerics and Math.NET Numerics libraries both provide complex numbers, linear algebra, statistical functions, and other useful tools for numerical computing.
  • The .NET Mass Downloader gets the .NET Reference Source Code to your hard disk, for use with the Visual Studio debugger.
  • The P/Invoke Interop Assistent by the CLR Interop Team converts between C++ and P/Invoke signatures and comes with a database of Win32 types and functions.
  • PowerCommands for Visual Studio 2008 and PowerCommands for Visual Studio 2010 provide handy shortcuts for common operations.
  • The Sandcastle Documentation Compiler combines assembly type data with XML comments extracted from C# source code to build stand-alone help files. The current release qualifies as a “Community Technology Preview” and does not come with a GUI frontend. I recommend Eric Woodruff’s excellent Sandcastle Help File Builder which can even import NDoc control files. Eric also maintains the Sandcastle Styles Project that fixes various issues with the standard distribution.
  • Snoop, the WPF Spy Utility is a stand-alone utility that complements the Win32 tool Spy++. Snoop can attach to any WPF application currently running on your system and shows its entire visual tree, including the property values and event histories of any selected element. Still marked as a beta release, Snoop is nevertheless an indispensable tool for WPF developers.
  • The Windows API Code Pack provides .NET support for a variety of new features in Windows Vista & Windows 7, including task dialogs and the Windows 7 task bar
  • The WPF Area by the WPF Team includes various sub-projects with samples and prerelease code.

Applications & Utilities

  • Microsoft Calculator Plus is an enhanced replacement for the Windows calculator. In addition to the standard and scientific mode, Calculator Plus offers a conversion mode covering many popular and scientific units for length, are, weight, temperature and so on. Note: Windows 7 users already have these functions in their standard calculator.
  • People who use Microsoft Word for long technical documents often complain about incomprehensible formatting and numbering errors. Consult Shauna Kelly’s Word Help FAQ and the Microsoft Word MVP FAQ site to avoid this fate, and for many other tips on styles and formatting.
  • Handy for saving mouse clicks: Keyboard shortcuts for Windows Vista, Windows 7, and Internet Explorer 8.
  • Microsoft Security Essentials is a free all-in-one package that protects unobtrusively against viruses, spyware, and all kinds of malware. Some commercial alternatives may have a better detection ratio, but MSE should serve well enough for most users who already use a hardware firewall (as they should).
  • Microsoft Virtual PC allows you to run multiple operating systems or configurations on a single Windows PC – simultaneously and without requiring a reboot. The virtual machines may be too slow to do much real work but they provide ideal testing platforms, without risking damage to your own system.

    Virtual PC itself requires Windows XP Professional or later but can host almost any existing PC operating system. Formerly a commercial application, Virtual PC is now available as a free download. Windows 7 users can also download Windows XP Mode, an integrated virtualization environment for running Windows XP applications on Windows 7.

  • The Windows XP SP2 Support Tools and the Windows Server 2003 Resource Kit Tools (XP compatible) each provide a vast number of useful command-line and GUI utilities. Annoyingly, the two collections overlap but are not identical. Only the Server Resource Kit contains the popular Robocopy tool that ships with Windows Vista and later, for instance.
  • XML Notepad 2007 for Windows XP or later with .NET Framework 2.0 is a nifty XML text editor with a structural tree view, an XSLT output window, and schema-based validation with IntelliSense. Sadly, it lacks the extremely useful table view of XML Marker.

Miscellaneous Links

  • The .NET Framework Developer Center provides links to all the various technologies, products, and articles related to the .NET Framework. For Windows Forms and the Windows Presentation Foundation specifically, you should also check out Microsoft’s WindowsClient.net website.
  • The MSDN Magazine collects developer-focused articles in a traditional print magazine format. However, the website offers individual articles and even entire issues as free downloads, so I’m not sure why they still bother with a print version and subscriptions…
  • The MSDN Online Library is the single most important resource for Windows developers: an ever-growing pile of information about any and all Microsoft products, including technical articles and partial or complete books.
  • The Microsoft Patterns & Practices website offers a large number of documents, libraries and sample code, mostly for .NET programming. Two items of particular interest are the Smart Client Architecture and Design Guide and Improving .NET Application Performance and Scalability.
  • The Microsoft Research website describes the company’s numerous research projects, sometimes including research papers and software for download. Check out the list of current projects to see what’s going on.
  • The Microsoft Typography website offers information and utilities for computer text fonts, including applications to view and edit the properties of TrueType/OpenType fonts, and an interactive tuner for the ClearType LCD font smoothing technology.

    Unfortunately, most of the free font downloads have been terminated, so if you want Microsoft’s “Core Fonts for the Web,” a bundle of OpenType fonts that includes my favorite screen font, Georgia, you’ll have to obtain a recent version of Internet Explorer.

    Microsoft does offer one free font download, however. The Consolas Font Pack is a monospaced font that requires Visual Studio 2005 or 2008 to install and was specifically designed for ClearType displays. Highly readable and strongly recommended for programmers. Note: Consolas also ships with Windows 7 and Visual Studio 2010.

  • The Windows User Experience Interaction Guidelines (UXGuide) for Windows Vista & 7 and the Windows User Experience Guidelines for Windows 2000 & XP are Microsoft’s official guidelines for Windows GUI design.

This page was last updated on 26 August 2010.
Current version available at http://www.kynosarges.de