Brandon's Notepad

September 14, 2017

TFS / VSTS Customization


I started working heavily with Microsoft Team Foundation Server (TFS) in the summer of 2016 and may be migrating to Visual Studio Team Servcies (VSTS) in the not-so-distant future. The need to customize TFS operations was almost immediately obvious, and the complexity of the customization only increases in proportion with the use of the tool. This page is a (growing) list of links that I’ve found useful.

Runtime Environment Variables

Environment variables are available for use during both build and release operations. These are my go-to references when I need to figure out how to get to runtime data.

Marketplace Extensions

The Visual Studio Marketplace offers many useful extensions for TFS & VSTS. Some implement or extend features such as dashboards, but the ones I’m most interested in (at least for now) are the build and release tasks. Like apps on a smart phone, these little gems eliminate the need for writing extensive scripts to compile code and deploy products. I’ve found it important to check the Marketplace often for new items as well as for updates to extensions already in use.




  • Hopefully, I won’t have to add any extensions in this section.

Custom Scripts & Extensions

If you can’t find what you need in the Marketplace, you can always write your own deployment scripts and extensions. These can be published or retained for internal use only, your choice. Here is a list of useful resources for beginners.




More to come…

March 1, 2010

The Mark Of The Web

Home > My Lists > Programming Notes > HTML & CSS > The Mark Of The Web

Starting with IE for XP SP2, web pages generated locally (e.g. in a temp directory) do not load properly in Internet Explorer if they include Active Content. This is a result of improved security surrounding the Local Machine Zone. Depending on your operating environment, it may not be possible or desirable to change IE’s security settings; moreover, such changes would have to be applied to all machines accessing local content. The “Mark of the Web” is a better solution.

Microsoft has implemented a new feature called the “Mark of the Web” (or MOTW for short). It is a specially-formated HTML comment that directs IE to open the page in the same security zone as the specified URL. Two valuable examples are:

<!-- saved from url=(0014)about:internet -->


<!-- saved from url=(0016)http://localhost -->

Under default security settings, IE is forced to open the page with the former code in the Internet Zone and a page with the latter code in the Local Intranet Zone. The number in parentheses is the number of characters in the URL.


November 19, 2009

Windows Keyboard Shortcuts

Filed under: Windows — Brandon @ 10:24 pm
Tags: , , , ,

Here are a few Windows keyboard shortcuts (also called “hotkeys”) that I find very useful. The well-known editing shortcuts have been omitted (e.g. CTRL+X to cut, etc.).

Windows Tools
WINDOWS+D: Show Desktop
WINDOWS+L: Lock workstation
WINDOWS+E: Open Windows Explorer (My Computer)
CTRL+SHIFT+ESC: Task Manager
CTRL+ALT+DEL: Security Manager

Opening Menus
CTRL+ESC: Start menu (same as WINDOWS key)
ALT+ENTER: Open properties menu
ALT+SPACE: Open system menu
SHIFT+F10: Open context menu (same as App key)

Switching Applications
ALT+TAB: Switch apps using “CoolSwitch” dialogue box
ALT+ESC: Switch apps in order opened
WINDOWS+TAB: Navigate apps on taskbar
[Add SHIFT to any of these to reverse direction]

CTRL-F6: Switch docs (e.g. Excel books)
F6: Cycles screen elements
F10: Activates menu bar
[F6, F10 & ALT expose shortcuts in Office 2007]

Moving a Window Using the Keyboard
On various occasions, I’ve had to retrieve a window that was outside of the visible boundries of the desktop. This happened most recently at work, when I logged into a computer with only one monitor attached. At my desktop, the app usually opens by default on the second monitor. To solve this:

  1. ALT+TAB until the app is in focus.
  2. ALT+SPACE to activate the system menu.
  3. Type the ‘M’ botton for ‘Move’.
  4. Use the arrow keys to move the window around.


May 29, 2009

WinNT is WinNT is WinNT

Home > My Lists > Technical Notes > WinNT is WinNT is WinNT

Buried in my old e-mails are golden nuggets of geek nostalgia. One such nugget is a snippet of an O’Reilly article that was sent to me by a friend in October of 1998, published two years prior, revealing that the Differences Between NT Server and Workstation Are Minimal. This came at a time when I was a devout NT user who was becoming increasingly-curious about Linux. This may actually have been the straw that broke the camel’s back, giving me a reason to ditch Microsoft altogether.

In a nutshell, Microsoft claimed publically that the kernels of the two products shared a common “structure” and that different kernels were the result of decisions in the compilation process (i.e. ‘ifdef’ statements). In reality, the kernels were identical, as were all of the packaged libraries – only about 100 extra files were shipped with NT Server. All other differences hinged on registry entries.

The only registry entry change needed in NT 3.51 is to the “ProductType” key (“WinNT” for Workstation vs. “ServerNT” or “LanmanNT” for Server). NT 4.0 requires a second entry change to the “SystemPrefix” key, which holds a binary value in the high-order DWORD bit 0x04000000 (on for Server, off for Workstation). There was also a security mechanism added in NT 4.0 to prevent tampering with these entries, though it is reportedly possible to override them.

Microsoft attorney, David Heiner, is quoted in the article “Microsoft has every right to put conditions on how its software is used” and the author of the article agrees (as do I). The real issues are that Microsoft (a) blatantly lied to customers to (b) artificially inflate prices on the OS while (c) low-balling the price on its IIS webserver to (d) unfairly undercut the competition.

Ahhh, the good ol’ days!

Create a free website or blog at