I am using the following code to reference a shell dll
Type t = Type.GetTypeFromProgID(\"Shell.Application\");
Shell s = (Shell)Acti
Instead of
Type t = Type.GetTypeFromProgID("Shell.Application");
dynamic shell = Activator.CreateInstance(t);
I used
var shell = (IShellDispatch4) new Shell();
shell.Namespace then works as expected.
Turns out that reference for a shell object defaults to IShellDispatch5, which can't be used in XP or 2003.