Создание IDL для преобразования MAPI-MIME - PullRequest
3 голосов
/ 19 сентября 2008

Я пытаюсь создать IDL для интерфейса IConverterSession, и меня смущает определение метода MIMETOMAPI . Он задает параметр LPMESSAGE pmsg как [out], но в комментариях указывается его указатель на загружаемое сообщение MAPI.

Мне неясно, распределяет ли функция объект сообщения MAPI и устанавливает ли указатель; в этом случае он не должен быть указателем на указатель MESSAGE? ИЛИ ожидается, что вызывающий код уже создал экземпляр объекта сообщения, и в этом случае почему он помечен как [out], а не как [in]?

В конечном итоге этот интерфейс должен использоваться из кода VB6, поэтому он должен быть [in] или [in, out], но мне нужно знать, использовался ли в IDL: -

[in] IMessage pmsg* 

OR

[in, out] IMessage pmsg**

Ответы [ 2 ]

1 голос
/ 07 декабря 2011

См. MAPIMime.h из источника MFCMapi (http://mfcmapi.codeplex.com/) в качестве окончательного источника.

1 голос
/ 19 сентября 2008

Я думаю, что в этом случае документация вводит в заблуждение, когда она помечает параметр как [out]. Вы должны передать действительный LPMESSAGE методу, и поэтому он не является двойным указателем. Поэтому я хотел бы использовать [in] в вашем определении idl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...