Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Embora muitas vezes seja possível usar a diretiva #include para incluir arquivos de cabeçalho em seu arquivo IDL, isso não é recomendado. O compilador MIDL gerará stubs para todas as funções definidas no arquivo IDL que está sendo compilado. Normalmente, um arquivo de cabeçalho contém vários protótipos que você não precisa nem deseja incluir em seus arquivos de stub, e um #include efetivamente coloca todas essas definições em seu arquivo IDL principal. Além disso, se houver tipos não remotaáveis definidos no arquivo de cabeçalho, o arquivo IDL pode não ser compilado.
Há duas maneiras de incluir definições de tipo de arquivos de cabeçalho em um arquivo IDL:
- Use a diretiva import para incluir tipos de dados definidos em um arquivo de cabeçalho. Ao contrário da diretiva #include da linguagem C, a diretiva de importação apenas pega definições de tipo e constantes e ignora protótipos de procedimento. Essa abordagem funcionará desde que seu arquivo IDL principal não faça referência a nenhum tipo não remotavel definido no arquivo de cabeçalho.
- Crie um arquivo IDL auxiliar com uma interface fictícia que inclua os arquivos de cabeçalho. Em seguida, use a diretiva import para incluir o arquivo auxiliar. Desta forma, apenas o typedefs aparecerá nos stubs compilados. Por exemplo:
//in helper.idl:
interface dummy
{
#include "kitchensink.h"
#include "system.h"
}
//in main.idl:
import "helper.idl";