VS2008 发布网站时如何产生固定命名的 Dll 文件

VS2008 在发布网站时,bin 目录里为所有 cs 生成的 dll 文件每次都是随机命名的,像这样子的 App_Web_g2dnx-qj.dll, App_Web_s9nor8mv.dll,这样对更新 Live 站点很不方便,因为动态库名变了,涉及到每一个 aspx 文件每次都重新更改了对库的引用声明:

<%@ page language="C#" autoeventwireup="true" inherits="_Default, App_Web_s9nor8mv" %>

即使有一个 cs 的小改动,由于生成的动态库名称不一样,造成所有的 aspx 文件都得重传一遍。如果能固定动态库的文件名,更新网站时就省事多了,只改了 cs 的话,重新生成 dll 文件,只需要替换这一个 dll 文件就 OK 啦。我们可以找到几种做法: 阅读全文 >>

Java调用动态库最简便方法和最好用的组件

记得以前 Java 要调用C/C++写得动态库都是用的 JNI 方式,还需要自己写不少 C/C++ 代码。比如说要在Java中调用已有的动态库,如 Windows 的 user32.dll 的方法 MessageBoxA,具体步骤是 Java 中声明一个 native 方法,然后用 javah 命令生成JNI样式的头文件,再自己实现头文件中声明的方法,在实现方法中装载动态库 user32.dll,调用 MessageBoxA 方法,需要把自己写的这部分 C/C++ 代码封装成一个动态库,如Sample.dll,最后在 java  中装载 Sample.dll,然后执行其中所声明的本地方法。

可见,用老实的JNI方式,我们在调用一个已知动态库的时候还需要额外生成一个符合JNI规则的动态库作为桥梁,显得有点多余了。 阅读全文 >>