我正在使用C ++和ATL为Internet Explorer创建扩展。我正在尝试使用下面的代码
更改自定义工具栏按钮的样式 // inject the drop down arrow
bool CBHO::setButtonMenu(HWND hWndToolbar, int buttonID){
TBBUTTONINFO inf;
inf.cbSize=sizeof(inf);
inf.dwMask=TBIF_STYLE;
inf.fsStyle=BTNS_DROPDOWN | BTNS_AUTOSIZE ;
if(SendMessage(hWndToolbar, TB_SETBUTTONINFO, (WPARAM)buttonID, (LPARAM)&inf))
return true;
return false;
}
但SendMessage抛出异常(hWndToolbar,TB_SETBUTTONINFO,.....
iexplore.exe中0x74730EC5(comctl32.dll)的未处理异常:0xC0000005:访问冲突 读取位置0x035CD434。
hWndToolbar是正确的,因为我已经使用相同的hWndToolbar获得了正确的buttonText和buttonID。
请建议如何更正此错误。以及如何将我的按钮样式更改为下拉按钮。