Я создаю библиотеку типов COM с более чем сотней интерфейсов.Определение всех интерфейсов и коклассов в одном library
нецелесообразно ... файл IDL становится длиной в тысячи строк!Поэтому я пытаюсь представить каждый интерфейс в отдельном файле и использовать import
s для удовлетворения его зависимостей.
Какие стратегии я могу использовать для управления таким количеством интерфейсов?Я пытаюсь использовать директивы import
везде, но я застрял, пытаясь включить их в TLB.Я пробовал #include
в library
, но с зависимостями все выглядит не так.1015 * ExampleLibrary.idl
// Should I put some imports here? They won't be included in the library.
import "IExampleA.idl";
import "IExampleB.idl";
[ uuid(...) ]
library InfrastructureLib
{
// This? Imports in a library don't actually include the types
import "IExampleA.idl";
import "IExampleB.idl";
// Or this? I get class redefinition errors trying #include
#include "IExampleA.idl"
#include "IExampleB.idl"
// Is there another way?
};