因为"发送到"这个比较麻烦, 我发送到我自已的另一个目录了, 相当于是拷贝, 可是我想移动.我用IContextMenu加了一个菜单项叫"移动到", 但是不能和"发送到"排在一起, 怎么才能让这两个东东排在一起呀.高手帮忙!!原码:
HRESULT CSimpleShlExt::QueryContextMenu(HMENU hMenu, UINT uMenuIndex, 
UINT uidFirstCmd, UINT uidLastCmd, UINT uFlags)
{
if (uFlags & CMF_DEFAULTONLY)
{
return MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_NULL, 0);
}
InsertMenu(hMenu, uMenuIndex, MF_BYPOSITION, uidFirstCmd, _T("移动到"));

return MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_NULL, 1);
}

解决方案 »

  1.   

    你试试别用shell提供的uMenuIndex,用GetMenuItemCount得到菜单项,然后用GetMenuItemInfo检查每一菜单项是否为“发送到”菜单(可能过菜单文字或菜单ID),如果是就把他的pos记下来,然后在insertMenu的时候用这个pos来插入菜单,看能不能行。
      

  2.   

    到http://www.vckbase.com/code/listcode.asp?mclsid=13&sclsid=1313找个例子
      

  3.   

    郁闷了:我灵机一动,在点发送到的同时按住shift ------------晕,居然被移动过去了,原来这么轻松, 我写了好长时间的程序就这么泡汤。。郁闷&散分