Проект, над которым я работаю, начал выдавать следующее предупреждение:
Предупреждение MIDL2471: Некоторые атрибуты и / или типы данных в файлах idl и / или включенных / импортированных idl не могут быть представленыв библиотеке типов:: unique [Параметр 'eventData' процедуры 'Event' (Dispinterface '_Events')]
Я пытался исследовать это, однако, это кажется очень неяснымпредупреждение, так что я надеюсь, что кто-то видел или испытал и решил это раньше.Я проворачивал решение этого предупреждения в течение целого дня без прогресса.Пример кода, генерирующего предупреждение из Communicator.idl:
dispinterface _Events
{
properties:
methods:
[id(1)] void ConnectStatusChange([in]long lStatus, [in]long lLastError);
[id(2)] void Event([in]long lEvent, [in, unique]SAFEARRAY(unsigned char) * eventData);
[id(3)] void CriticalEvent([in]long lEvent, [in, unique]SAFEARRAY(unsigned char) * critEventData, [in] long lEventID);
[id(4)] void Log([in]BSTR bstrMessage, DWORD dwMessageType);
};
Любая помощь или совет очень важны.Заранее спасибо!
ОБНОВЛЕНИЕ: Я никогда не решал эту проблему.Скорее, мы закончили непреднамеренным рефакторингом и никогда не знали наверняка, что вызвало это.Однако, так как я никогда не получал никаких ответов и потому что в Интернете почти ничего об этом не было, я сильно склонялся к тому, что это было что-то экологическое с моей установкой VS, так что я никогда не знал, что было не так, вероятно, вряд ли будет иметь большое значение вэтот момент.