注意UF_PART_ask_part_tag的参数输入带扩展名的部件名或者不带扩展名的部件名,不允许输入全路径名,否则会出错,例如下面这例子。部件在C盘“C:\temp\B01.prt ”输入D盘“D:\temp\B01.prt”竟然也不返回NULL_TAG。
测试例子:返回结果已经写在注释中
#include "Text.h" extern DllExport void ufusr(char *param, int *returnCode, int rlen) { UF_initialize(); tag_t tagPart = NULL_TAG; tagPart = UF_PART_ask_part_tag("B01"); list("B01=%d ", tagPart);//B01=44858 tagPart = UF_PART_ask_part_tag("B01.prt"); list("B01.prt=%d ", tagPart);//B01.prt=44858 tagPart = UF_PART_ask_part_tag("B01.aaa"); list("B01.aaa=%d ", tagPart);//B01.aaa=0 tagPart = UF_PART_ask_part_tag("C:\temp\B01.prt");//这种用法是错误的不需要填写完整路径名 list("C:\temp\B01.prt=%d ", tagPart);//C: empB01.prt=44858 tagPart = UF_PART_ask_part_tag("D:\temp\B01.prt");//这种用法是错误的不需要填写完整路径名 list("D:\temp\B01.prt=%d ", tagPart);//D: empB01.prt=44858(注意也不返回NULL_TAG) list(" "); tagPart = UF_PART_ask_part_tag("C02"); list("C01=%d ", tagPart);//C01=0 UF_terminate(); } extern int ufusr_ask_unload(void) { return (UF_UNLOAD_IMMEDIATELY); }