KBEA-00012 - Serialization on tlh or tli files

Summary

Excessive serialization occurs on files with TLH or TLI extensions.
When encountering #import statements in C+, the compiler generates C+ classes and places them in files with TLH or TLI extensions. See #import statement. The compiler re-generates these files for each import statement encountered, which causes each C++ file to be serialized in the project. It also re-generates the classes if a different version of the type library is encountered (for example, if the type library is located outside of the emake root and a different version exists on each agent).

Solution

If the type library is outside of the emake root, first ensure that all agents have exactly the same version with exactly the same timestamp.
If this does not solve the issue (or the type library is inside of the emake root), use only the raw interfaces of the type library.

For example:
#import <MyDLL.tlb> raw_interfaces_only
See raw_interfaces_only.
This may require code changes to compile successfully.

Alternatively, use "implementation_only" in conjunction with "no_implementation". See implementation_only.
Note that the option "embedded_idl" always causes serialization.

See Also

See the attachment for a list of the available #import options and their effect on serialization.

Applies to

  • OS versions: Windows
Have more questions? Submit a request

Comments

Powered by Zendesk