windows - Dave's Blog
Navigation List
Blog Entries
6 days ago"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 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.
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
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 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 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 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 Mar 28, 4:29Some interesting queries for Windows search like size:>50MB, broadcastdate:2005, datetaken:6/12/2006.
windows search syntax win7 howto technical Mar 5, 12:33ClickOnce is a .NET app deployment technology that lets you easily install apps with minimal user interaction even from the web. This is what Google Chrome uses to install so easily.
msdn technical development security windows .net csharp programming clickonce google chrome Feb 26, 8:40
I'm making a switch from the IE team to the Windows team where I'll be working on the next version of Windows. As a going away surprise Jen and Nick added me to my gallery of Bill Gates (discussed previously). Here's a close up of the photoshopped cover.
Before:

After:
microsoft bill gates photoshop windows Feb 22, 8:27Its a building with the furniture escaping through windows... art
art san-francisco building window furniture Feb 19, 2:27Raymond's tips for modifying x86 assembly code while debugging.
tutorial debug debugging technical assembly x86 windows raymond-chen tips Feb 3, 1:09If you've got cable, Internet, and Netflix you end up with a large number of TV viewing options. Its nice to have the options but is there some way to collect and summarize my available options at
any one time?
|
TV
|
PC
|
|
Comcast TV
|
Xbox 360 + Windows Media Center
|
Windows Media Center
|
|
Comcast OnDemand
|
Cable box
|
Fancast
|
|
Hulu
|
Xbox 360 + PlayOn + Windows Media Center
|
Hulu
|
|
Netflix Watch Instantly
|
Xbox 360 + Netflix App
|
Netflix Watch Instantly
|
|
Netflix DVDs
|
Xbox 360
|
PC
|
tv xbox 360 wmc dvr Jan 25, 7:47Windows 3.1 done in HTML and Javascript. Memories...
windows windows31 humor web microsoft javascript html Jan 22, 1:44"He seeded the customer's parking lot with USB flash drives, each of which had a Trojan horse installed on it. When the employees arrived for work in the morning, they were quite excited to find the
free gadgets laying around the parking lot. Employees eagerly collected the USB drives and plugged them into the first computers they came across: their own workstations."
via:ericlaw security usb windows social-engineering computer technical Jan 12, 7:10Info on writing apps to work with low rights mode in IE7 and IE8. Includes info on elevation policy for applications
technical programming ie ie7 ie8 security elevation msdn microsoft windows Jan 5, 7:42
I've made a WPAD server Fiddler extension and in a fit of creativity I've named it: WPAD Server Fiddler Extension.
Of course you know about Fiddler, Eric's awesome HTTP debugger tool, the HTTP proxy that lets you inspect, visualize and modify the HTTP traffic that
flows through it. And on the subject you've probably definitely heard of WPAD, the Web Proxy Auto Discovery protocol that allows web browsers like IE
to use DHCP or DNS to automatically discover HTTP proxies on their network. While working on a particularly nasty WPAD bug towards the end of IE8 I really wished I had a way to see the WPAD
requests and responses and modify PAC responses in Fiddler. Well the wishes of me of the past are now fulfilled by present day me as this Fiddler extension will respond to WPAD DHCP requests
telling those clients (by default) that Fiddler is their proxy.
When I started working on this project I didn't really understand how DHCP worked especially with respect to WPAD. I won't bore you with my misconceptions: it works by having your one DHCP server
on your network respond to regular DHCP requests as well as WPAD DHCP requests. And Windows I've found runs a DHCP client service (you can start/stop it via Start|Run|'services.msc', scroll to DHCP
Client or via the command line with "net start/stop 'DHCP Client'") that caches DHCP server responses making it just slightly more difficult to test and debug my extension. If a Windows app uses
the DHCP client APIs to ask for the WPAD option, this service will send out a DHCP request and take the first DHCP server response it gets. That means that if you're on a network with a DHCP
server, my extension will be racing to respond to the client. If the DHCP server wins then the client ignores the WPAD response from my extension.
Various documents and tools I found useful while working on this:
proxy fiddler http technical debug wpad pac tool dhcp 2009 Dec 12, 1:08WinSock uses a WPAD like protocol for... something?
technical reference proxy wpad winsock windows