Avviso del compilatore (livello 4) C4337
La libreria dei tipi a cui viene fatto riferimento incrociato 'typelib1' in 'typelib2' viene importata automaticamente
L'attributo auto_search della direttiva #import ha causato l'importazione implicita di una libreria dei tipi.
Date due librerie di tipi su disco create dai due file seguenti (compilati con midl.exe):
// C4337a.idl
[
uuid(F87070BA-C6D9-405C-A8E4-8CD9CA25C12B)
]
library C4337aLib
{
[uuid(F87070BA-C6D9-405C-A8E4-8CD9CA25C12C)]
enum E_C4337a
{
one = 0,
two = 1,
three = 2
};
};
e quindi il secondo file con estensione idl,
// C4337b.idl
[
uuid(F87070BA-C6D9-405C-A8E4-8CD9CA25C12D)
]
library C4337bLib
{
importlib("c4337a.tlb");
[uuid(F87070BA-C6D9-405C-A8E4-8CD9CA25C12E)]
struct S_C4337b
{
enum E_C4337a e;
};
};
L'esempio seguente genera l'errore C4337:
// C4337.cpp
// compile with: /W4 /LD
#import "c4337b.tlb" auto_search // C4337
// explicitly #import all type libraries to resolve
// #import "C4337a.tlb"
// #import "C4337b.tlb"