标题: 一般用户进行二次开发的方法和部分常见问题解答 [打印本页]
作者: even2004 标题:一般用户进行二次开发的方法和部分常见问题解答 时间: 2009/03/05/12:52
1、要解决的问题
       在论坛上经常看到有人问:“一般用户”和正版用户怎样进行二次开发的问题,下面给大家一个正解。

2、背景知识和分析
    在回答这个问题前,给大家一点背景知识(针对vwindows平台):
    1、DYNA只是一个求解器(一个固定的可执行的exe文件),它可以读取K文件,并进行计算,最终输出结果。
                                                        编译                                               连接
    2、DYNA开发过程:DYNA源代码---->DYNA.OBJ文件或DYNA.lib————>DYNA.exe文件(可执行文件)

      如果进行二次开发,实际上就是要修改原有的exe文件,在其中加入自己的程序(子材料什么的)。而不管你是“一般用户”还是正版用户,都不太可能直接修改exe文件(除非你特别特别牛,能直接编写机器语言(比汇编语言还低一级别),开个玩笑,基本不可能实现)。所以目前DYNA开发商,给正版用户提供了下面的方式进行二次开发:          
                                              编译                                          连接
       自定义程序代码(F文件)---->OBJ文件 + DYNA.lib————>新的DYNA.exe文件(其中包含自定义的部分)

        从上面可以看出二次开发实际上是重新生成了一个全新的可执行程序,这一过程需要F文件、 DYNA.lib和其它资源文件,而不需要原来的DYNA.EXE文件,所以不管你是正版还是别的,如果没有DYNA.lib文件等都是不可能进行二次开发的。
        而“一般用户 ”和正版用户的区别在于:
        1、正版用户可以直接要求开发商提供F文件、 DYNA.lib和其它资源文件,而一般用户只有通过其它渠道。
        2、将K文件提交DYNA.EXE计算时,正版用户由于有license ,可以直接通过检查并进行计算;而“一般用户”目前基本上是通过修改 DYNA.exe文件。跳过检查,最终实现计算的。

3、解决的具体方法
     “一般用户”要实现二次开发就必需首先有F文件、 DYNA.lib和其它资源文件;通过编译连接后生成新的EXE文件;再修改EXE文件,跳过license检查(这个网上有说明具体过程,所以关键是要得到那几个二次开发文件)。

4、结论
      “一般用户”完全有可能进行二次开发,关键是要通过其它渠道得到正版用户才有的F文件、 DYNA.lib和其它资源文件。

阳光精品论坛 - Powered By BMForum v5.0