Debugging VBA Macros and Managed Components at the Same Time

This week I got the following question in email: I’m writing a COM component in C# that is used in Excel VBA macros. I really need to debug the VBA macro and the C# component at the same time. Is that possible? Absolutely! Here’s the steps: Start Visual Studio with no projects open. Select the…

Apple Now Supports Vista x64 on Mac Pros!

As I have been screaming from the roof tops, the best Vista x64 machines are Apple’s Mac Pros. They are rock solid, quiet, and beautiful. Apple just announced the latest Mac Pros with up to 8 CPUs. They also snuck in complete support for Vista x64! According to the fine folks at Mac Rumors, the…

WinUnit: An Outstanding Native C++ Unit Testing Tool

Whew! I can finally talk about one of the coolest pieces of code I’ve seen in ages: WinUnit. About a year ago, my friend, Maria Blees showed me an idea she had for unit testing native C++ code and asked if I thought it was any good. It was far more than good it was…

Smarter Logging with MSBuild

MSBuild has made my life so much easier that it makes me shudder thinking back to the days of NMAKE. With very little effort, I’ve been able to automate so much of my software build and processing that I almost wonder if MSBuild will eventually start writing my code for me as well. Of course,…

Additional .NET Framework Source Code Debugging Tricks

With the big announcement today, everyone’s looking at the Framework sources like mad. Make sure you read everything in Shawn Burke’s blog entry before you start. I thought I’d mention a couple of additional hints to help you out. If you’ve been downloading your symbols with the Microsoft Symbol Server, make sure to delete your…

Prepare to Migrate Your Visual Basic 6.0 Code to Visual Basic .NET

Do you have tons of VB6 code still running in your organization? I’m always surprised in our consulting and debugging work how much VB6 code is still running. I’m a strong advocate of not breaking working code, but with Microsoft ending all support for VB6 in March, 2008 you need to start planning, if you…

“It’s Always a People Problem”

I don’t read many blogs, but one that I’m addicted to is Jeff Atwood’s Coding Horror. I don’t know how Jeff finds the time to write so many lucid blog entries, but the rest of us are the beneficiaries of his diligence and fortitude. Recently, Jeff blogged about the importance of human factors in software development.…

How to Disable the UAC Prompt for a Specific Application

While I like User Account Control (UAC), there’s always that one application that you need to run that requires admin rights. This is especially problematic if you need to automate that application from a batch file, scheduled task, or code build. While I guess you can hire someone to click on the Continue button, it’d…

Code Signing – It’s Cheaper and Easier than You Thought

One of the things I’ve always wanted to do, but never got around to, is to figuring out how to sign my code. Like most developers, I never really worried about code signing until Vista came along. Maybe it’s just because I’m completely anal retentive, but I always felt a little guilty when my applications…

Catching Up During the Holidays

It’s been a while since I found time to write a blog post. I’ve been occupied with a heavy teaching load, customer visits, and all the business stuff that’s necessary around year end. I usually try to use December to catch up. This year it’s been harder than usual because so much has happened around…

Cumulative Patching with WiX 2.0

Sometimes I wonder if Windows Installer will be the death of me. While I’ve successfully shipped device drivers, debuggers, and all sorts of bizarre products, I have to say that trying to get something installed on Windows is one of the more frustrating things I have encountered in my career. I can’t be the only…