下载首页 | 资讯中心 | 文章分类 | 最近更新 | 排 行 榜 |
文章搜索: 分类 关键字
您的位置:首页软件教程Pro/E → Pro/E二次开发使用toolkit开发trigger的程序
Pro/E二次开发使用toolkit开发trigger的程序
日期:2007-1-2 13:50:02 人气:95     [ ]
上一页 [1] 下一页
 

    使用toolkit开发trigger的程序时,往往需要能够连续通过trigger来触发dll中的函数.
我碰到的问题:
   1.配置trigger:
   Name: CimDll
   Event: Create PIV
   Time:  POST
   RequireNO
   DLL:Cim.dll
   Function:PDMTPIVCreatePostOperation
   
  2.源代码:
   int PDMDLLInit()
{
   PTCERROR pdm_status;
   FILE      *g_pfileLog;

   g_pfileLog =fopen("test.dat","w");
   setbuf(g_pfileLog,NULL);
   fprintf(g_pfileLog,"begin test\n");
   pdm_status = PDMTriggerRegister("PDMTPIVCreatePostOperation", PDMTPIVCreatePostOperation);
   if (pdm_status != PDM_SUCCESS)
   {  
    printf("Failed to Register Trigger PIV Create Post.\n");
   }
    return (pdm_status);
}

int PDMTPIVCreatePostOperation(int argc, void **argv)
{
   fprintf(g_pfileLog,"test\n");
   .....
   fprintf(g_pfileLog,"end test\n");
   fclose(g_pfileLog);

}

   结果:以上代码存在的问题:如果我们在第一次checkin到C/S中后,删除test.dat文件,然后再进行checkin时,发现没有再生成test.dat,在函数PDMTPIVCreatePostOperation()中所进行的对文件的操作都无效.
   原因:我们使用trigger触发时,真正起作用的是函数:PDMTPIVCreatePostOperation(),而PDMDLLInit()只是在第一次checkin时起作用,所以在第一次调用PDMTPIVCreatePostOperation()后,我就fclose (g_pfileLog),所以出现了上面的情况.所以注意的是:不要把一些重要的东西放在函数PDMDLLInit()中.

上一页 [1] 下一页
我有问题,我要进入论坛
出处:本站原创 作者:佚名
 热点文章
·如何定制自己的个性化..
·proe超级技巧
·怎样学好PRO/E软件?
·PRO/E COFNIG文件设置..
·PROE将默认英制转换成..
·PRO/E分模经验总结
·Pro/E 各种曲线方程集..
·Pro/E 各种曲线方程集..
·Pro/E 各种曲线方程集..
·Pro/E 各种曲线方程集..
·Pro/E 各种曲线方程集..
·旧版ProE如何读取野火..
·Pro/E如何做两条c2(曲..
·Pro/E 2001下一个阵列..
·一款钣金产品的结构设..
 推荐文章
·翻砂铸造的特点及其工..
·整编SolidWorks应用技..
·模具选材原则
·如何解决中文Pro/E工程..
·Pro/ENGINEER 中的文本..
·Pro/ENGINEER Wildfir..
·模型从proe->ansys..
·用行为建模优化设计的..
·簡單的Top-Down設計實..
·适合初学者的基础练习..
·ProE不传之秘笈(高级技..
·PRO/E 关于零件精度的..
·Pro/E的scan-tools工具..
·关系式的世界
·关系式教程