zip解凍を下記コードでしているのですが、
ClickOnesで発行しインストールしたPCの中で一台だけ例外で動作しません。
VisualStudioから「デバックを開始」だと正常に動きます。
動かないOSはXPです。(他のXP機やVista・7は動作します。)
Shell32は参照設定してローカルコピーもしてます。

try {
Shell32.ShellClass s32 = new Shell32.ShellClass();
Shell32.Folder zip = s32.NameSpace(filename);
Shell32.Folder zipex = s32.NameSpace(dir);
Shell32.FolderItems zipItem = zip.Items();
zipex.CopyHere(zipItem, 20);
}
catch (Exception e) {
MessageBox.Show(e.ToString());
}

<例外の内容>
System.InvalidCastException: 型 'Shell32.ShellClass'のCOMオブジェクトを
インターフェイス型'Shell32.IShellDispatch5'にキャスト出来ません。
IID '{866738b9-6cf2-・・・略}'が指定されたインターフェイスのCOMコンポーネント上でのQueryInterface 呼び出しのときに
次のエラーが発生したため、この操作に失敗しました:
インターフェイスがサポートされていません(HRESULTからの例外:0x80004002
(E NOINTERFACE))。
場所 Shell32.ShellClass.NameSpace(Object vDir)

エスパーな内容で申し訳ありませんが、宜しくお願いします。