Begtostudy(白途思)'s Professional Technology Blog

欢迎访问begtostudy的专业知识博客!主要是专业技术和算法为主。
  首页  :: 联系 :: 订阅 订阅  :: 管理

.net 4.0 dll运行于UG NX多个版本的方法

Posted on 2011-03-03 12:38  白途思  阅读(1365)  评论(1编辑  收藏  举报

dotnet有多个版本,比如1.0, 2.0,3.0,4,0,目前最高的是4.0了。

dotnet程序向下兼容,但是不向上兼容,即高版本可以调用低版本程序,但是低版本不能调用高版本程序。(当然可以通过一些方法调用,本文就是一种)。

这样就出现了一个问题。

UG XN4支持的1.x版本的,UG NX5、NX6、NX7支持2.0,3.x。这是由于dotnet的2.0、3.x使用的都是2.0的运行时库。

什么是运行时库Runtime呢?

打个比方,dotnet framework是C#程序的基础,Runtime是dotnet framework的基础。基础一样当然可以低版本加载高版本的。这样NX6其实也是可以运行3.x的dll。

然而,runtime不是永远不变的,2.0和3.x只是个巧合,现在的4.0版本就更新了运行时库,到runtime4.

因此,NX7及以下版本是不能直接调用4.x及以上版本的dll的。当然NX程序并不是dotnet语言开发的,但是原理类似。它调用dotnet机制,我以前发过博文,可以看看。

 

你可能要问了,为什么一定要用4.x或者更高的dotnet语言开发呢?为什么不用1.1开发NX4的,2.0,3.X开发NX5,6,7的程序呢?

首先,单版本开发是最好的了!比如用1.1开发的程序运行在4.x上。

但是,多版本的程序显然就不合适了。难道,我只能用1.1写程序,然后在2.0,3.x上编译吗?这样的话,我们没有办法使用2.0,3.x以及以后dotnet发展的新功能!

这是多么可惜的事情!现代编程语言发展的越来越好用,而我们只能使用陈旧落后的方法……

 

当然,经典终归是经典。你也可以选择C++作为开发语言,运行在多个平台上。这没问题!

可是我实在忍受不了C++的开发效率!

我不是专业级程序员,我就是可科学工作者,顶多算是个工程技术爱好者。

我没时间为了编个界面花上个几天时间!居然比我写算法程序时间还长,要它何用……

 

全文如下:


 

前往Begtostudy的编程知识博客(CSDN)