iCAx开思工具箱

标题: J-link二次开发手把手教程V3.0 [打印本页]

作者: 腾飞出品    时间: 2008-12-24 22:15
标题: J-link二次开发手把手教程V3.0
关于J-link的一些考虑
J-link对于许多没有尝试过的人来说,刚开始学习可能会困难重重,但是当入门了之后会发现和其他的二次开发方法大同小异,在此我不想强调J-link比其他的二次开发方法有多大的显而易见的优势,而是希望和感兴趣的朋友们一起探讨另外一种二次开发的途径,也希望我的发帖能起到抛砖引玉的作用!下面我将继续和大家讨论J-link的一些基础知识。
PROE的其它二次开发类似,J-link也有同步模式(Synchronous Mode

)与异步模式(AsynchronousMode)之分,由于这两种模式的程序设计思想迥异,在此将这两种模式分开讨论,我们首先探讨J-link同步模式。
PROE安装目录下与J-link同步模式开发有关的目录说明:
1.  *\ jlink\jlinkdoc\api目录,该目录为J-linkAPI帮助文档,J-link的所有类库、接口等信息都可以在此文件夹下找到;
2.  *\text\java目录,该目录包括两个JAR包,也即J-link的类库,其中pfc.jar为同步模式相关的JAR包,pfcasync.jar为异步模式相关的JAR包;在使用Eclipse进行编译的时候需要包含相应的JAR包;
3.  *\ jlink目录,该目录下有许多J-link自带的一些示例源代码,上节中的InstallTest即出自该文件夹下的*\jlink_appls\install_test目录。
接下来对上节的附件中的各文件进行说明:
1.     protk.dat——该文件为PROE辅助应用程序的注册文件,用记事本打开后包含如下信息:
# 07-Feb-00  I-03-26 $$1 JCN Changed class name.
# 20-Nov-02  J-03-38 $$2 JCN Delay_start = true, due to Wildfire startup order
# 30-Jan-03  J-03-41 $$3 JCN Removed ##2, added text_dir
以上三行以#开头的内容为说明性内容,可以省略
name   InstallTest—该行为程序名,可以任意设定;
startup  java—该行表明为J-link应用程序;
java_app_class  StartInstallTest—该行为J-link程序的起始类名,该类名必须与J-link项目的起始类名相一致;
java_app_start  start—该行为J-jlink起始方法名,也须与上述StartInstallTest类的方法成员名一致;
java_app_stop   stop—该行为J-jlink结束方法名,也须与上述StartInstallTest类的方法成员名一致;
allow_stop      true—设置是否可以在程序运行期间中止,true为可以中止,false为不能在运行期间中止;
delay_start     true—设置是否在PROE启动时J-link程序自动运行,设为false则自动运行;true为不自动运行,此时需要在PROE启动之后手动运行程序,为了程序便于调试,在以后的示例中,全部将其设为true即手动运行程序!
text_dir        ./text—该行指示了一个目录地址,该目录包含程序中出现的一些提示信息和菜单按钮信息文件,在以后的示例中将详细讨论;
end—结束符号。
2.     pfcInstallTest.javaStartInstallTest.java

为上节测试例的源代码,通过编译之后将得到pfcInstallTest.classStartInstallTest.class字节码文件,J-link核心程序的运行正是这2个字节码文件起作用,注意到StartInstallTest.class的文件名(也即类名)正与protk.dat文件中的起始类名相同;
3.     text文件夹,该文件夹下包含一个msg_jlinstall.txt文件,由于J-link程序线程的限制,不能做到简单的调用System.out.println()函数直接在PROE消息窗口输出提示信息,因此J-link采用另外的方式实现,该文件正与这种实现方式有关。须特别注意,该文件夹的位置必须与protk.dattext_dir 项中的地址一致,并且缺少text文件夹,则J-link程序不能正常运行。
本节到此结束,在腾飞以后的帖子中将和大家一起分析一个具体的J-link案例,从而一步步的深入研究J-link开发方法
         Merry ChristmasEVE!
作者: raohuan    时间: 2009-1-4 12:10
楼主加油,支持你!
作者: 潇洒做一回0    时间: 2009-1-7 18:23
支持楼主,感谢楼主,学习中,及时雨
作者: laohushizi    时间: 2009-7-8 14:55
很感谢  !!!希望有更多的实例讲解。谢谢
作者: yikeshu2009152    时间: 2011-3-28 13:19
好,顶!顶!顶!顶!顶!
作者: zqingzun    时间: 2011-10-26 11:13
J-LINK与toolkit二次开发有什么区别呢?




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3