Welcome to MSDN Blogs Sign in | Join | Help

Browse by Tags

Teaching Children to Program

I was playing Robozzle with my oldest and he was having a blast and loved that he was programming like Dad does. (He did let me know he wants to be policeman though. :) It’s a fun way to introduce kids to programming and reminds me a little of the little
Posted by jamesfinnigan | 0 Comments
Filed under: ,

Hyper-V review

The hypervisor support in Server 2008 is now out in beta and it's great to see the product hitting the street.  Virtualization is a huge change for the industry that can do a lot for everyone from data-centers to software houses, to people who just

Beginning again - and hiring

Well, fun times.  I've taken a position on the Virtual Machine Manager team.  I'll be one of the lead developers working on the next version.  It's an exciting space, with a lot of players and a lot of new technologies. I'm also hiring
Posted by jamesfinnigan | 0 Comments
Filed under: , ,

The Shell Extensions Approved list is *not* a complete list of shell extensions on the system

I've noticed that a number of different programs just look at the Approved list of shell extensions [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved] and figure that all shell extensions will be in that list. It's
Posted by jamesfinnigan | 0 Comments
Filed under: ,

Supplemental Registrations (aka. Context Menu Handers (etc) - where are they loaded from...)

I've been thinking about the registration problem where you want to add a context menu (much of this applies to static verbs as well) to a file type (we'll say .ogg). You don't want the default verb, you just want to add some verbs. Because you don't
Posted by jamesfinnigan | 7 Comments
Filed under: ,

Installing shell extensions - please complain here

So... I've been looking more closely at Wix and I think I'm going to build some custom actions to do a really good job installing shell extensions. Which ones do you find most problematic? I realize this is a bit of a change of pace for the blog, so I'll
Posted by jamesfinnigan | 9 Comments
Filed under: , , , , ,

Summer Fun, Full House

(Normally this kind of post is reserved for my other blog where I mostly blog about non-tech - so don't worry, I won't be boring you with stories of how incrediby smart and cute my little boys are (obviously my wife's DNA is doing overtime).) We've been
Posted by jamesfinnigan | 2 Comments
Filed under:

The best way to make UAC shut up for a while

Let's say you want to install a few things and want UAC to stop bugging you while you install them. Should you turn off UAC and install the apps? Since that disables UAC's virtualization, it can destabilize things that depend on data written to those
Posted by jamesfinnigan | 2 Comments
Filed under: , , , ,

How to stop WinDbg from going crazy and loading all the symbols

One of my favorite features of WinDbg is that it doesn't load all the symbols up-front. That's a huge part of what makes it so much faster than Visual Studio. However, every once in a while you can do things that cause WinDbg to go crazy and load all
Posted by jamesfinnigan | 0 Comments
Filed under: ,

Breaking when the instruction pointer leaves the module

The problem is to skip out of a kernel driver that we don't have symbols for - what's the best way to break on calls out of that driver. If you used pc (step until the next call instruction), you would hit calls that are inside that driver. Here's another
Posted by jamesfinnigan | 0 Comments
Filed under: ,

Finding where a bad HRESULT is returned

I've looked at this a couple times , but here's another way to break when the error code you're looking at is being returned. .while(@eax != 0xc0000005) { t ; reax } If you want to avoid the output noise, you can do something like this: .while(@eax !=
Posted by jamesfinnigan | 0 Comments
Filed under: ,

How to only break on a jump when it will be taken

Here's a question that came up a work a little bit back - thought I would share the result around. There is a coding pattern (that I don't ever really use so I may be messing it up) that works like this: T1 res1; T2 res2; T3 res3; res1 = GetRes1(); if
Posted by jamesfinnigan | 0 Comments
Filed under: ,

Making an MSI that doesn't need a UAC/LUA prompt

The goal I think that most things don't need to require a UAC prompt to install - just install it for that user. Why not make the MSI so it doesn't prompt and your users get a smoother experience? (Also, I feel much better installing a program that doesn't
Posted by jamesfinnigan | 6 Comments
Filed under: , , , , ,

How to launch an un-elevated process from an elevated process

This question has come up a fair amount lately. The short answer is that you don't * - instead you should: first launch an unelevated process have that unelevated process launch an elevated process and wait for it to finish (or use some form of IPC) have
Posted by jamesfinnigan | 0 Comments
Filed under: , , ,

UAC UI on oldnewthing - what the colors mean

I mentioned recently that I was the new owner of the UAC UI (from the dev side). Well, today I found that Raymond Chen's blog has brought up the topic of what the colors mean. I hadn't even really noticed that the dialogs changed much before taking ownership
Posted by jamesfinnigan | (Comments Off)
Filed under: ,
More Posts Next page »
 
Page view tracker