接口一般写在idl文件中(IRONCAD的是写在*.if文件中),通过编译会生成一个tlb文件,这个tlb文件是在外部使用的,不限制语言,使用的时候需要在外部import这个tlb文件,就会生成一个对应这种语言的tlh文件,这个tlh文件一般是放在该工程内。
当使用该接口时,就会从这个Tlh文件中读取,如果发现某个函数不是该接口的成员函数,一般的原因就是idl中没有定义。
所以增加接口函数时,不能只在*.h和*.cpp文件中定义和实现,想要暴露给外部使用,就需要在tlb文件中增加该函数的定义。