пишу COM компонент на VC .NET/ATL. Такой вот enum (IDL код) не попадает в Type Library.
enum ReturnIPAddressEnum{
esOnlyFirstAddress,
esOnlyDirectoryAddress,
esAllAddresses
};
Может к нему какой аттрибут прикрутить? Или настройки MIDL или VC подкрутить?
Здравствуйте, alexxys, Вы писали:
A>пишу COM компонент на VC .NET/ATL. Такой вот enum (IDL код) не попадает в Type Library.
A>A>enum ReturnIPAddressEnum{
A> esOnlyFirstAddress,
A> esOnlyDirectoryAddress,
A> esAllAddresses
A>};
A>
A>Может к нему какой аттрибут прикрутить? Или настройки MIDL или VC подкрутить?
Скорее всего это описание вне library блока. Просто перенеси его внутрь.
Здравствуйте, alexxys, Вы писали:
[]
Скорее всего, у тебя просто код на idl не верный. Попробуй определить enum с ключевым словом typedef.
MSDN: The enum keyword must be preceded by typedef.
Потом, я бы посоветовал указать все-таки uuid, helpstring и проч. Мало-ли что. Самому же потом понадобиться!
Здравствуйте, alexxys, Вы писали:
A>пишу COM компонент на VC .NET/ATL. Такой вот enum (IDL код) не попадает в Type Library.
A>A>enum ReturnIPAddressEnum{
A> esOnlyFirstAddress,
A> esOnlyDirectoryAddress,
A> esAllAddresses
A>};
A>
A>Может к нему какой аттрибут прикрутить? Или настройки MIDL или VC подкрутить?
[
uuid(...)
]
typedef enum ReturnIPAddressEnum
{
...
}ReturnIPAddressEnum;
Попробуй так. И добавь в library.
А>Скорее всего, у тебя просто код на idl не верный. Попробуй определить enum с ключевым словом typedef.
Всё у него верно. У меня этот код работает.
enum EBSHandshaking {comNone = 0x0000,
comXOnXOff = 0x0001,
comRTS = 0x0002,
comRTSXOnXOff = 0x0003};
Здравствуйте, Tom, Вы писали:
Tom>Здравствуйте, alexxys, Вы писали:
A>>пишу COM компонент на VC .NET/ATL. Такой вот enum (IDL код) не попадает в Type Library.
A>>A>>enum ReturnIPAddressEnum{
A>> esOnlyFirstAddress,
A>> esOnlyDirectoryAddress,
A>> esAllAddresses
A>>};
A>>
A>>Может к нему какой аттрибут прикрутить? Или настройки MIDL или VC подкрутить?
Tom>Скорее всего это описание вне library блока. Просто перенеси его внутрь.
Так и есть. Большое спасибо!