Anyway, I don't remember seeing C mentioned. Is there a reason why not?
Working with DirectX (or anything COM) in C is a pain.