Group:  Microsoft Outlook ยป microsoft.public.outlook.program_addins
Thread: com addin button callbacks.

Geek News

com addin button callbacks.
"Daniel" <dgrillo[ at ]radvision.com> 2/22/2007 3:27:42 PM

I'm building an Outlook COM addin with C++. I've implemented a command bar
and button call back functions similarly to how things were explained in the
article http://www.codeproject.com/com/outlookaddin.asp. The command bar and
buttons live on the appointment item in outlook. I find that when two
appointment items are opened, and I click on the button in one, the call
back is fired in both. Any ideas? Thankyou.

Some pseudocode below

..h

//Appointment toolbar button events
extern _ATL_FUNC_INFO OnButtonClick;

typedef IDispEventSimpleImpl< 4,CAppointmentAddin,
&__uuidof(Office::_CommandBarButtonEvents)> ApptButton1Events;


class ATL_NO_VTABLE CAppointmentAddin :
public CComObjectRootEx
,public ISupportErrorInfo
,public IDispatchImpl
,public IInspectorEvents
,public IItemEvents
,public
IDispEventSimpleImpl<4,CAppointmentAddin,&__uuidof(Office::_CommandBarButtonEvents)>
//,public
IDispEventSimpleImpl<5,CAppointmentAddin,&__uuidof(Office::_CommandBarButtonEvents)>
,public IApptCommandBarsEvents
{

BEGIN_SINK_MAP(CAppointmentAddin)

SINK_ENTRY_INFO(4,
__uuidof(Office::_CommandBarButtonEvents),
0x01,
OnButtonClick,
&OnButtonClickInfo)
END_SINK_MAP


}


RE: com addin button callbacks.
Dan G 2/22/2007 8:17:27 PM
Never mind. A few posts down from this was the answer. Needed unique tags
for my buttons.


"Daniel" wrote:

[Quoted Text]
>
> I'm building an Outlook COM addin with C++. I've implemented a command bar
> and button call back functions similarly to how things were explained in the
> article http://www.codeproject.com/com/outlookaddin.asp. The command bar and
> buttons live on the appointment item in outlook. I find that when two
> appointment items are opened, and I click on the button in one, the call
> back is fired in both. Any ideas? Thankyou.
>
> Some pseudocode below
>
> ..h
>
> //Appointment toolbar button events
> extern _ATL_FUNC_INFO OnButtonClick;
>
> typedef IDispEventSimpleImpl< 4,CAppointmentAddin,
> &__uuidof(Office::_CommandBarButtonEvents)> ApptButton1Events;
>
>
> class ATL_NO_VTABLE CAppointmentAddin :
> public CComObjectRootEx
> ,public ISupportErrorInfo
> ,public IDispatchImpl
> ,public IInspectorEvents
> ,public IItemEvents
> ,public
> IDispEventSimpleImpl<4,CAppointmentAddin,&__uuidof(Office::_CommandBarButtonEvents)>
> //,public
> IDispEventSimpleImpl<5,CAppointmentAddin,&__uuidof(Office::_CommandBarButtonEvents)>
> ,public IApptCommandBarsEvents
> {
>
> BEGIN_SINK_MAP(CAppointmentAddin)
>
> SINK_ENTRY_INFO(4,
> __uuidof(Office::_CommandBarButtonEvents),
> 0x01,
> OnButtonClick,
> &OnButtonClickInfo)
> END_SINK_MAP
>
>
> }
>
>
>

Home | Search | Terms | Imprint Contact
Newsgroups Reader - provided by WiredBox.Net