昨天做一个程序需要分析MP3文件的信息,其中用到一个ShellClass类,包含在shell32.dll中,win7中该dll是6.1版本。
将该程序放在windows server 2003 中运行时,出现以下错误,然后将该dll替换成一个1.2.107的版本,完美运行。并且向上兼容。
Unable to cast COM object of type 'Shell32.ShellClass' to interface type 'Shell32.IShellDispatch5'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{866738B9-6CF2-4DE8-8767-F794EBE74F4E}' failed due to the following error: 不支持此接口 (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).