*.TLB
-
Hi ,
da gibt es ein Com Objekt das sich auch nicht verändert hat, es
erzeugt bei der Kompilierung seine type infos in einem Verzeichnis
je nach Debug/Release Einstellung.Beide versionen der *.tlb sind erwartungsgemäß identisch.
An einer relativ anderen Position importiert ein Projekt
jenes *.tlb file um nun mit dessen typeinformationen
variablen zu verwenden :#ifdef _DEBUG #import "..\..\..\Common\gfx\Debug\gfx.tlb" no_namespace #else #import "..\..\..\Common\gfx\Release\gfx.tlb" no_namespace #endif class CGfxObject { public: IGfxFramePtr m_pGfx; CGfxObject() { m_pGfx = IGfxFramePtr( __uuidof(GfxFrame) ); } };
Leider klappt das seit neuestem nur noch im Debug -modus obschon
die Release Version sich Dateiseitig(*.tlb) nicht unterscheidet.In der Fehleranzeige nach der Kompilierung findet sich dann:
IntelliSense: cannot open source file "Y:/PacT/Project/PacPis/VFilterCam/Release/gfx.tlh"
Das reine Import sollte doch *.tli und *.tlh im outputfolder
erzeugen nach einem #import.. Das passierte aber nicht.Warum ist unerklärlich ?
(der Fehler kommt vor seitdem ich den Schalter /MP großflächig aktivierte ?)
Nachtrag: eine deaktivierung von /MP beseitigt den Fehler .
"seltsam aber so steht es geschrieben"
gruß
Karsten