|
分類:[C#]
こんばんわ。
VS2008のC#で開発をしています。
Shell32を用いて、mp3のID3タグを取得するプログラミングを作成しました。しかし、コンパイルを行ったPCで実行するとうまく動くのですが、再配布パッケージを使って他のPCで実行すると
型 'Shell32.ShellClass' の COM オブジェクトをインターフェイス型 'Shell32.IShellDispatch5' にキャストできません。IID '{866738B9-6CF2-4DE8-8767-F794EBE74F4E}' が指定されたインターフェイスの COM コンポーネント上での QueryInterface 呼び出しのときに次のエラーが発生したため、この操作に失敗しました: インターフェイスがサポートされていません (HRESULT からの例外: 0x80004002 (E_NOINTERFACE))。
上記のエラーがでてプログラムが止まってしまいます。
ShellClass nowPlayShell = new ShellClass(); Folder nowPlayFolder = nowPlayShell.NameSpace(dirPass); FolderItem nowPlayItem = nowPlayFolder.ParseName(fileName);
のようにShellClassを定義しているのですが、nowPlayShell.NameSpace(dirPass)を呼び出すと上記のエラーが発生します。
他のPCでも実行できるようにしたいのですが、方法がわかりません。 ご教授よろしくお願いします。
|