求解~~~求大神帮助啊 啊啊啊啊

A452516091 2012-07-11 09:36:10
我在http://www.codeproject.com/Articles/7484/How-to-overlay-an-icon-over-existing-shell-objects这个链接里下载了他的代码,然后把他的DLL文件copy到我的project下面使用,注册成功以后在注册表里可以看到,但是在我的project里怎么都看不到实现的效果;贴我的代码给大神们~~~帮帮看看:
CoInitialize(NULL);
HRESULT hr = NULL;
IShellIconOverlayIdentifier* ptr = NULL;
CLSID clsid;

hr = CLSIDFromProgID(L"OverlayIcon.MyOverlayIcon",&clsid);
if(FAILED(hr))
{
MessageBoxA(NULL,"error1","提示",1);
return 0;
}

hr = CoCreateInstance(clsid,NULL,CLSCTX_INPROC_SERVER,__uuidof(IShellIconOverlayIdentifier),(LPVOID *)&ptr);


if (SUCCEEDED(hr))
{
int cchMax ;
int pIndex ;
DWORD pdwFlags ;
int pPriority;

ptr->IsMemberOf(L"D:\\Work\\123.docx",pdwFlags);
ptr->GetPriority(&pPriority);
ptr->GetOverlayInfo(L"C:\\Documents and Settings\\user25\\桌面\\CWatcher\\my.ico", cchMax, &pIndex, &pdwFlags);

ptr->Release();
}

CoUninitialize();
return 0;

我不知道哪里有问题,好多天了,纠结啊
...全文
110 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
總務 2012-07-19
  • 打赏
  • 举报
回复
關閉所有 explorer.exe 的進程
然后 啟動 explorer.exe 即可

(此外有沒有不用關掉explorer.exe的方法就可看到執行的效過?)
wshcdr 2012-07-13
  • 打赏
  • 举报
回复
唉呀, 没做过 Shell, 帮顶
A452516091 2012-07-11
  • 打赏
  • 举报
回复
都么有人吗

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧