Stephen Toub

.NET, MSDN Magazine, and other Adventures in Life

  • Stephen Toub

    Low-Level Keyboard Hook in C#

    • 205 Comments
    I answered a question today where someone asked for an example of setting a low-level keyboard hook with C#. I actually have an example of doing so in my May 2006 MSDN Magazine article on Managed Debugging Assistants , but the example is purposefully...
  • Stephen Toub

    Fun with DVR-MS

    • 87 Comments
    My latest article for MSDN Online is now available at Fun with DVR-MS ! A bit on the long side, but in it I delve into working with DirectShow and DVR-MS files (the recorded television files generated by Windows Media Center) from managed code, and I...
  • Stephen Toub

    DVR-MS: Adventures in Closed Captioning

    • 84 Comments
    I finished the code for this project months and months ago, and I had every intention of writing a full MSDN article describing the ins and outs of what I’d accomplished, but time seems to have gotten away from me. Rather than let the code languish any...
  • Stephen Toub

    Edit DVR-MS Metadata

    • 83 Comments
    I was asked earlier this week if I knew of any tools that would let one easily edit the metadata associated with a DVR-MS file. Specifically, the person wanted to edit the title and description of a recorded show. There may very well be such a tool out...
  • Stephen Toub

    Position Changer Add-In updated for Media Center in Windows Vista

    • 70 Comments
    Back in early 2005, I wrote an article for MSDN on implementing add-ins for Windows XP Media Center Edition 2005 . As part of that article, I implemented an add-in that made it easy to jump around in a recorded TV show, video, or music file using the...
  • Stephen Toub

    Preview Handler Association Editor

    • 68 Comments
    I received an email from MSDN Magazine subscriber Oren Novotny thanking me for my preview handler article in the January 2007 issue of MSDN Magazine . Oren also wondered whether a tool could be written to make it easy to edit preview handler registrations...
  • Stephen Toub

    Low-Level Mouse Hook in C#

    • 64 Comments
    After my last post on implementing low-level keyboard hooks in C# , Soumitra asked if it was possible to implement a low-level mouse hook in C#, too. Sure. Here is an example that will print out the location of the mouse every time you press the left...
  • Stephen Toub

    OutlookContactProvider

    • 53 Comments
    Back in May , I wrote an article for the Office Developer Center on MSDN on an idea I had for creating Outlook Calendar Providers (and later demonstrated how to write an additional provider for this to allow Windows XP Media Center 2004 recording schedules...
  • Stephen Toub

    Position Changer Add-In updated for Windows XP Media Center Edition 2005 Update Rollup 2

    • 49 Comments
    Today, the Media Center team released Update Rollup 2 for Windows XP Media Center Edition 2005 (you may have heard of the update referred to previously as "Emerald"). Update Rollup 2 includes a plethora of modifications to improve the stability, reliability...
  • Stephen Toub

    Fun with DVR-MS (now on my blog)

    • 45 Comments
    Several years ago, I wrote an article for MSDN on programming against the DVR-MS file format. I'm very pleased with how well the article was received, and to this day I get a lot of people writing to me about the article. Unfortunately, recently the article...
  • Stephen Toub

    An ASP.NET Framework for Human Interactive Proofs

    • 25 Comments
    An article I recently wrote for MSDN online just went live: An ASP.NET Framework for Human Interactive Proofs It's always fun when that happens :)
  • Stephen Toub

    Time Travel with Media Center

    • 25 Comments
    One of the features I've wanted for a while now in Media Center is the ability to easily jump around within media. I have a bunch of family home videos on my machine, and it can be frustrating to navigate to particular moments that I want to show to family...
  • Stephen Toub

    Fun with DVR-MS Follow-up

    • 24 Comments
    I've received some very nice feedback on my DVR-MS article ... I'm glad people are finding it so informative! I did want to call out one thing about the sample code. Buried in the middle of the article (when discussing WmvConverter) is a sentence:...
  • Stephen Toub

    Fun with AudioVideoPlayback

    • 23 Comments
    I'm sure I'm not alone in that I keep a laundry list of personal coding projects I want to work on when I get free time. Most of them are fairly short and only take a few hours to complete. We finished work on the June issue of MSDN Magazine yesterday...
  • Stephen Toub

    Google before asking questions

    • 21 Comments
    Found this on the web this morning... it's almost scary how true this really is. I almost never ask a question these days before first doing a well-crafted google search or two.
  • Stephen Toub

    Custom Calendar Providers for Outlook 2003

    • 19 Comments
    I have been playing around with this concept for quite a while and finally decided to put it down in an article on MSDN: Custom Calendar Providers for Outlook 2003 Outlook 2003 has really cool integration with SharePoint in that it can consume SharePoint...
  • Stephen Toub

    Using MediaState.dll with GAC'd Add-Ins

    • 19 Comments
    Update (10/14/2005): MediaState.dll in the new SDK released today is signed. You can download it at http://www.microsoft.com/downloads/details.aspx?FamilyId=1D836C29-ABD5-4FDD-90C5-5C5ABAE97DB4&displaylang=en . The Media State Aggregation Service...
  • Stephen Toub

    Blocking queues

    • 19 Comments
    In many concurrent systems, one thread performs some work, the result of which another thread consumes. This producer/consumer pattern is frequently implemented on top of blocking queues. If you examine the behavior of System.Collections.Queue and...
  • Stephen Toub

    ASP.NET Web services test page

    • 16 Comments
    Did you know it's possible to customize the test page auto-generated for Web services in ASP.NET? For example, let's say you wanted to order the WebMethods such that they're displayed in alphabetical order. You can modify the DefaultWsdlHelpGenerator...
  • Stephen Toub

    StringCollectionEditor

    • 14 Comments
    Anton asked about design-time editing for the Words property (a StringCollection) of my ImageHipChallenge control . It's a good question. I actually intended to adorn the property with [Browsable(false)] so that the property wouldn't show up in the PropertyGrid...
  • Stephen Toub

    Sudoku code now available!

    • 14 Comments
    I'm happy to announce that the code for Microsoft Sudoku for the Tablet PC and Ultra-Mobile PC is now available for download at: http://www.microsoft.com/downloads/details.aspx?FamilyID=C0461E1A-BD6A-4B21-A199-D3D4F9D79CF7 Note that the download includes...
  • Stephen Toub

    MSJ Scam

    • 14 Comments
    First, a bit of history on MSJ, as taken from the MSJ archive at http://www.microsoft.com/msj/: Microsoft Systems Journal was the first programming publication from Microsoft. Predating the Windows operating system, MSJ covered MS-DOS internals beginning...
  • Stephen Toub

    Updated Media Center "Time Travel" article for Windows Vista

    • 12 Comments
    Several months ago I updated my "Time Travel with Windows Media Center" article to be based on Windows Vista rather than on Windows XP. It's now online! If you're interested in writing background add-ins for Media Center, check it out at http://msdn2...
  • Stephen Toub

    UnauthorizedAccessException in PDF Preview Handler

    • 12 Comments
    For my article on preview handlers in the January 2007 issue of MSDN Magazine , I wrote a sample preview handler for previewing PDF files. This allows you to view PDF files in Outlook and in the Vista shell just as you would other document types for which...
  • Stephen Toub

    Sudoku on a non-Tablet PC

    • 11 Comments
    I've received a bunch of emails over the past week from people asking if I have a version of Sudoku.exe that runs on non-Tablet PCs. I tell them yes, and I tell them that they do, too :) Sudoku.exe references and uses types from Microsoft.Ink.dll,...
Page 1 of 6 (150 items) 12345»