View Single Post
Old 20th November 2013, 06:25   #2
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 3,009
Send a message via Skype™ to thinktink
Ah HA! I found out what was going on. Apparently, the version of MLSKINNEDPOPUP in my copy of ml_ipc_0313.h is 8 bytes short. The following is what I had to do to get it to work (hakzorz.)

code:
if(mlwnd)
{
BOOL RES;
struct lulz
{
MLSKINNEDPOPUP mlsp;
DWORD param1;
DWORD param2;
};
lulz mlsp;
//MLSKINNEDPOPUP mlsp;
memset(&mlsp,0,sizeof(mlsp));
#define mlspp mlsp.mlsp
mlspp.cbSize=sizeof(mlsp);
mlspp.hmenu=menu;
mlspp.fuFlags=uFlags;
mlspp.x=x;
mlspp.y=y;
mlspp.hwnd=owner;
mlspp.lptpm=lptpm;
#undef mlspp
RES=::SendMessageW(mlwnd,WM_ML_IPC,(LPARAM)&mlsp,ML_IPC_TRACKSKINNEDPOPUPEX);/**/
if(RES==0)
RES=::TrackPopupMenuEx(menu,uFlags,x,y,owner,lptpm);
return RES;
}
else
{
return ::TrackPopupMenuEx(menu,uFlags,x,y,owner,lptpm);
}

thinktink is offline   Reply With Quote