• UG二次开发调试技巧


    UG二次开发的程序多是dll,调试的时候要启动UG主进程。以前实在属性的命令里指定UG的exe,但是调试退出UG也退出了,十分的不便。启动UG好慢啊!所以,研究了一下如何在调试完的时候能够不关闭UG。

    大体来说,思路是将开发的dll注入UG的进程空间,而不是主动的启动UG主进程,这样调试完就可以卸载而不会关闭主进程。

    注入进程的调试方式有两种,后面细说。首先说两点准备,第一,加载是手动,卸载方式要是立即的(C)或者手动(C++),不要让dll在UG结束的时候才能卸载。第二,要用异常捕获,或者之类的办法,否则出现错误,很可能将进程杀死。当然UG做的还不错啦,就算出错,一般也不会退出。

    另外说明一点,本文是针对internal模式的,语言是C或者C++,其实用.net也一样,我就不赘述了。有空再将.net开发。

    正文开始:

    一、UG NX4,在调试时注入方式。NX4只能是这种,NX5可以在属性里设置另一种。NX4使用的是VS2003

    1,在程序中设置断点,编译模式debug

    2,设置卸载方式,前面已说

    3,启动UG,或者UG正在运行

    4,在VS2003中找到【调试】菜单,选择【进程】

    5,选择进程ugraf.exe,点击【附加】

    6,勾选“Native”程序类型,多说一句,.net程序选择CLR类型

    7,在VS中启动调试,然后在UG中加载dll,

    8,打开VS2003调试

    9,调试完选择【调试】菜单中的【全部分离】或者【停止调试】,两者的区别自己研究。

    10,最后别忘了,如果设置手工卸载,还要在UG中卸载dll

    二、UG NX5,VS2005.采用project 属性中设置的方式。当然也可以同上。

    1,在程序中设置断点,编译模式debug

    2,设置卸载方式,前面已说

    3,启动UG,或者UG正在运行

    4,在VS2005中设置project属性页,

    5,在【configuration property】中的“Debugging”中,指定command为你的ugraf.exe,当然包括路径

    同时选择“attach”为Yes.另外,.net程序也是如此。

    6,启动调试调试

    7,在UG中加载dll,

    8,打开VS2003可以调试了

    9,调试完选择【调试】菜单中的【全部分离】或者【停止调试】,两者的区别自己研究。

    10,最后别忘了,如果设置手工卸载,还要在UG中卸载dll

    说的够清楚了吧。本来有抓图的,但是各位可能也知道CSDN上传图片很痛苦的。

    有问题回帖。

    image

    欢迎访问我的专业知识博客!
    博主:白途思(begtostudy)
    微信/QQ:370566617
    Email:begtostudy#gmail.com
    欢迎访问我的其他博客:我的编程知识博客 我的学术知识博客

  • 相关阅读:
    元组
    list取值
    字符串常用方法
    列表判断存在不存在的两种方法
    jQuery 事件
    jQuery创建元素 添加(内部、外部)
    jQuery元素操作 遍历jquery元素 each(function(i,domEle){})
    失眠怎么办
    这个时间点是最佳的睡眠时间,被称为“美容觉”,你睡对了吗?
    这3种入睡的“小窍门”,或许助你“快速入睡”
  • 原文地址:https://www.cnblogs.com/begtostudy/p/1881994.html
Copyright © 2020-2023  润新知