相关疑难解决方法(0)

16
推荐指数
2
解决办法
10万
查看次数

从.NET Windows服务调用Shell32.dll

我有一个.NET 4.0库,它使用Shell32和Folder.GetDetailsOf()从WTV文件中获取元数据.我已成功使用它与控制台和Windows窗体应用程序没有问题.但由于某种原因,从.NET 4.0 Windows服务调用组件时,启动Shell类的调用会导致COM错误.

库中失败的代码:

Shell32.Shell shell = new Shell();

错误:

无法将"System .__ ComObject"类型的COM对象强制转换为接口类型"Shell32.Shell".此操作失败,因为对IID为"{286E6F1B-7113-4355-9562-96B7E9D64C54}"的接口的COM组件的QueryInterface调用由于以下错误而失败:不支持此类接口(HRESULT异常:0x80004002(E_NOINTERFACE)) .

我阅读了我的公寓线程,COM Interops,动态,PIA等等,但是我找到的解决方案没有解决问题.它必须是来自另一个无法看到Interop的线程的调用.请帮忙 :)

.net c# com multithreading shell32

10
推荐指数
2
解决办法
7030
查看次数

标签 统计

.net ×1

c# ×1

com ×1

multithreading ×1

robocopy ×1

shell32 ×1