2011 Apr 8, 2:32"Since writing lock-free code is issuch a headache-inducer,you're probably best off making some other people suffer the headachesfor you. And those other people are the kernel folks, who have
developedquite a few lock-free building blocks so you don't have to. For example, there's a collection of functions for manipulatinginterlocked lists.But today we're going to look at theone-time
initialization functions."
technical windows programming raymond-chen lock thread-safety 2011 Jan 23, 4:49Sysinternals Mark Russinovich writes a novel (fiction) and gets a Bill Gates blurb for the cover: “Mark came to Microsoft in 2006 to help advance the state of the art of Windows, now in his latest
compelling creation he is raising awareness of the all too real threat of cyberterrorism.” —Bill Gates
book security microsoft sysinternals mark-russinovich novel fiction technical 2011 Jan 4, 7:25How to take ownership and re-ACL registry keys from a powershell prompt.
technical powershell acl regkey registry windows 2010 Dec 13, 11:14
I've made two simple command line tools related to the console window and Win7 jump lists. The source is available for both but neither is much more than the sort of samples you'd find on MSDN
=).
SetAppUserModelId lets you change the Application User Model ID for the current console window. The AppUserModelId is the value Win7 uses to group together icons on the task bar and is what the
task bar's jump lists are associated with. The tool lets you change that as well as the icon and name that appear in the task bar for the window, and the command to launch if the user attempts to
re-launch the application from its task bar icon.
SetJumpList lets you set the jump list associated with a particular AppUserModelId. You pass the AppUserModelId as the only parameter and then in its standard input you give it lines specifying
items that should appear in the jump list and what to execute when those items are picked.
I put these together to make my build environment easier to deal with at work. I have to deal with multiple enlistments in many different branches and so I wrote a simple script around these two
tools to group my build windows by branch name in the task bar, and to add the history of commands I've used to launch the build environment console windows to the jump list of each.
win7 jumplist technical console 2010 Sep 4, 7:55"Given Duke Nukem Forever's epic development—it was first announced in 1997 as a sequel to Duke Nukem 3D—it might be wise to hedge on the later of those two release windows."
duke-nukem game video videogame 2010 Aug 20, 11:20
For a new project I'm working on involving IE's installed Accelerators and OpenSearch search providers via the Windows 7
Accelerator Platform, I've created a C#/COM interop class for those APIs.
Download the osinterop.cs interop file here.
technical accelerator csharp com 2010 Aug 17, 3:05
I've just got a new media center PC connected directly to my television with lots of HD space and so I'm ripping a bunch of my DVDs to the PC so I don't have to fuss with the physical media. I'm
ripping with DVD Rip, viewing the results in Windows 7's Windows Media Center after turning on the WMC DVD Library, and using a powershell script I wrote to copy over cover art and metadata.
My powershell script follows. To use it you must do the following:
- Run Windows Media Center with the DVD in the drive and view the disc's metadata info.
- Rip each DVD to its own subdirectory of a common directory.
- The name of the subdirectory to which the DVD is ripped must have the same name as the DVD name in the metadata. An exception to this are characters that aren't allowed in Windows paths (e.g.
<, >, ?, *, etc)
- Run the script and pass the path to the common directory containing the DVD rips as the first parameter.
Running WMC and viewing the DVD's metadata forces WMC to copy the metadata off the Internet and cache it locally. After playing with Fiddler and reading this
blog post on WMC metadata I made the following script that copies metadata and cover art from the WMC cache to the corresponding
DVD rip directory.
Download copydvdinfo.ps1
powershell wmc technical tv dvd windows-media-center 2010 Aug 14, 5:34pInvoke.net is a wiki for the C# interop declarations for various Win32 functions.
pinvoke c# csharp consle api windows reference wiki technical 2010 Jun 25, 2:58"... all you need to do is specify the /W switch and the file or folder you want to overwrite—after you have already deleted it. cipher /W:C:\Path\To\Folder"
technical cmd privacy security windows cipher delete 2010 May 10, 7:23"Kevin Frei - Exception Hanlding Cost September 2006 meeting of the Northwest C++ Users Group. Discussion of the assembly language cost of exception handling on the x86 Windows and x64 Windows
platform"
C++ programming language exception microsoft windows performance technical video 2010 May 6, 7:16"Today web gadgets, mashup components, advertisements, and other 3rd party content on websites either run with full trust alongside your content or are isolated inside of IFrames. As a result, many
modern web applications are intrinsically insecure, often with unpredictable service quality. Live Labs Web Sandbox addresses this problem."
web browser web-sandbox technical javascript html windows live security sandbox microsoft silverlight