Top  Previous  Next

A tlb file is a type-library and it contains a description of one or more a COM components.


It will be inside the InventorUtils.h file, something like this:


#import "RxInventor.tlb" no_namespace named_guids raw_dispinterfaces raw_method_prefix("") high_method_prefix("Method") \

       rename("DeleteFile", "APIDeleteFile"), rename("CopyFile", "APICopyFile"), rename("MoveFile", "APIMoveFile") \

       rename("SetEnvironmentVariable", "APISetEnvironmentVariable")


To get the compiler to find the tlb file you need to add a path to it in the projects properties. Of these two I've been told to use the one under bin32 :


C:\Program Files\Autodesk\Inventor 2017\Bin

C:\Program Files\Autodesk\Inventor 2017\Bin\Bin32


If you don't add the path you'll get something like this:


C1083: Cannot open type library file: 'RxInventor.tlb': No such file or directory.


The compiler will create two more files, in your DEBUG and RELEASE directories:





If you change Inventor version you should


1.Clean your whole solution.
2.Make sure the include paths are updated.
3.Erase the tli and tlh files before recompiling (in your project Debug and Release directories).
4.Search in all text files for "Inventor 2017" (if for example you are moving from "Inventor 2017" to "Inventor 2019") and change to the new version (in this example "Inventor 2019")


This COM/TLB/TLH/TLI stuff is all a mystery inside an enigma. To complete the porting in one instance I had to change a line inside "InventorUtils.h" from...


#import "RxInventor.tlb" no_namespace named_guids...




#import "C:\Program Files\Autodesk\Inventor 2019\Bin\RxInventor.tlb" no_namespace named_guids...


...else the compiler could not find the file.












Text, images and diagrams © 2021 Owen F. Ransen. All rights reserved. (But copy the source code as much as you want!)