找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 6383|回复: 9

[分享] proe二次开发常见问题解答

[复制链接]

488

主题

2209

回帖

5880

积分

上尉

积分
5880
发表于 2010-10-22 11:59:51 | 显示全部楼层 |阅读模式
1、  PRO/ENGINEER二次开发中,如何实现自动注册

要实现DLL程序文件的自动注册,需要把注册文件(.dat)文件放到PRO/ENGINEER指定的几个文件夹,取名为Protk.dat,下面是几个存放注册文件的位置。

(1)       Pro/ENGINEER启动目录下的Protk.dat或Prodev.dat。

(2)       在Pro/ENGINEER的配置文件中,指定的以“PROTKDAT”、“PRODEVDAT”或“TOOLKIT_REGISTRY_FILE”变量所存储的位置下的Protk.dat或Prodev.dat。

(3)       $LOADDIR$MACHINE_TYPEtext<LANGUAGE>目录下的Protk.dat或Prodev.dat。

(4)       $LOADDIRtext目录下的Protk.dat或Prodev.dat。

如果在这些文件夹下还无法实现自动注册,可能是PRO/ENGINEER版本存在问题,访问PTC公司的网站:http://www.ptc.com/go/timeout/,并下载相关补丁,具体操作过程如下:

(1)、打开windows系统的任务管理器,在进程中选中nmsd,结束该进程。

(2)、在http://www.ptc.com/go/timeout/下载nmsd.exe,放在一个临时文件夹中。

(3)、用下载的nmsd.exe覆盖$LOADDIR$MACHINE_TYPEi486_ntnms下的nmsd.exe;

(4)、重新启动PRO/ENGINEER就能自动加载菜单,并且在WINDOWS的任务管理器的进程中出现nmsd。

2、如何调用PRO/ENGINEER已有的按钮

要调用PRO/ENGINEER已有的按钮,有两种方法。

(1)、使用函数ProCmdCmdIdFind()函数。

(2)、使用函数ProMacroLoad()或ProMacroExecute(),执行记录的一段宏命令。也可以实现原有菜单的调用。

3、调用自定义菜单后,为什么PRO/ENGINEER的工具栏菜单中的再生按钮会消失

当使用自定义菜单调用一个界面之后,当前的窗口将会处于非激活状态,所以很多的操作将无法使用。可以使用【窗口】菜单下的【激活按钮】,也可以在自定义的菜单的函数中添加如下的语句来激活当前窗口:

Int CurrentWindowToActiveID;

ProWindowCurrentGet(&CurrentWindowToActiveID);

ProWindowActivate (&CurrentWindowToActiveID);

4、如何在PRO/ENGINEER中调试DLL程序

启动PRO/ENGINEER后,如果有注册运行某程序,但是中间停止了程序,并添加新的菜单项,如果要使这个修改生效,必须重新启动PRO/ENGINEER,因为当注册运行程序一次,这个程序的信息文件就被导入内存,如果程序被停止,但是信息文件并没有从内存中消除,所以当再一次启动程序的时候,仍然使用的是原来的信息文件。

5、如何在程序中修改工作目录

要修改工作目录,可以使用Pro/Toolkit提供的函数ProDirectoryChange(),实例程序如下:

#include “ProUtil.h”  //函数的头文件

ProFilename filename1;

ProError status;

Status=ProDirectoryChange(ProStringToWstring(filename,”d:temp”));

6、一个dat文件怎样才能永久的注册在PRO/ENGINEER中执行

在PRO/ENGINEER的菜单中【工具】中的【选项】里面查找protkdat,并设置需要被永久注册的文件名,然后把这个设置保存为config.pro,注册文件需要存放到启动目录中。

7、Pro/Toolkit怎样做一个像PRO/ENGINEER文件打开对话框一样的文件预览窗口

ProBarewindowCreate(w_name,PRO_PART,&p_window_id)这个函数可以生成一个没有菜单的窗口,相当与打开了一个新的窗口,参数可以加入模型,在这个窗口里可以实时旋转,感觉就像预览一样。

Pvactivex.ocx控件就是Productview提供的控件,它在Productview的安装目录(ProductViewExpress)下,Productview插件用网页浏览器浏览零件实用的就是Pvactivex.ocx控件。

另外ProBarewindowCreate方法打开的是一个独立的窗口,不能与其他界面融为一体,不理想。

4

主题

27

回帖

0

积分

列兵

积分
0
发表于 2010-12-22 23:49:08 | 显示全部楼层
这么好的资料都没人看
浪费了

14

主题

58

回帖

0

积分

列兵

积分
0
发表于 2011-3-25 09:44:01 | 显示全部楼层
哇!!这么有用的一个帖子!!!上天啊!!!为什么!!!为什么!!!为什么让我今天才看见啊!!!真是相见恨晚啊!!!

2

主题

55

回帖

0

积分

列兵

积分
0
发表于 2011-3-26 00:01:12 | 显示全部楼层
二次开发,还要学C++

0

主题

14

回帖

0

积分

列兵

积分
0
发表于 2011-4-10 11:52:29 | 显示全部楼层
回复 3# lovedongyao


    我看过的一本书后面也有这些内容,比这个还多几个问题呢

4

主题

4

回帖

0

积分

列兵

积分
0
发表于 2011-5-30 16:10:37 | 显示全部楼层
的确很有用的的一个帖子  可惜还是看的一头雾水。

6

主题

46

回帖

0

积分

列兵

积分
0
发表于 2011-6-20 15:00:56 | 显示全部楼层
回复 1# sheng


    讲的很好,顶一个

4

主题

54

回帖

0

积分

列兵

积分
0
发表于 2011-9-23 18:24:32 | 显示全部楼层

0

主题

9

回帖

0

积分

列兵

积分
0
发表于 2011-12-13 10:29:40 | 显示全部楼层
不错的东东啊
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

咨询QQ:1359218528|发帖须知!|Archiver|手机版|小黑屋|UG爱好者论坛 ( 京ICP备10217105号-2 )

GMT+8, 2025-1-12 01:56

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表