http://www.heege.net/webcasts/ExtendingCPlusPlusCodeWithDotNETFeatures/default.html