Damm... I was aware of this thing, that parameters should passed in reverse order. Nways good to hear that u finaly done it ! See the pseduo code for context menus prob: VARIANT v1,v2,v3; While( i > 88) { v1.vt = VT_I4; v1.lVal = i; Invoke(pDispWord,"CommandBars",0,DISPATCH_PROPERTYGET,1,v1,v2) v3.vt = VT_BOOL; v3.boolVal = 0; Invoke(v2.pdispVal,"Enabled",0,DISPATCH_PROPERTYPUT,1,v3,NULL); i++; } That's al ! Gud luck ! Cheers, Vishal