使用ActiveX DLL来保护你的 代码 。(既可以不用为使用共享的加密 软件 而发愁, 更重要的是可以自己来顶制加密方法了,享受一下“一切尽在掌握之中”的感觉。 同时也为了让大家都自己动手来做出自己的组件来。) ActiveX DLLs是被编译过的机器 代码 ,如果没有源项目文件的话是不能够被编译的。 这个 技术 使得 开发 者有可能 开发 出公共的自动化 程序 ,并且把它们作为shareware版本的 程序 发布 这个大家在china asp 中销售的一些组件中就可以看到这个 技术 的运用。 如果你想保护你的 ASP 中的一些 代码 的安全,例如你不想让别人看见你是使用什么连接到 数据库 的,或者不想让别人看到你的某个比较重要的函数是怎么完成的,或者某个重要的 流程(cAkk可以参阅),你就可以通过不断的 开发 你自己的组件,这可是个dll文件,就是别人得到了 这个dll文件,一时半会也根本不能够得到你要保护的重要信息。而且你自己 开发 的这些组件 给你的 程序 带来了源源不断的新功能。 下面就举一个很常用的,大家都很关心的有关如何保密打开 数据库 的过程的例子。 例子很简单,就是在一个下拉框中显示 数据库 中某个字段的 内容 。 整个过程如下: 1。新建一个 VB 6的ActiveX DLL项目 2。在属性窗口中,命名你的库模块和项目文件。例子中为keiths_lookup项目名和lookup模块名. 这写名字是你在 ASP 中将引用到的dll函数名(在 ASP 中的对象名将为keiths_lookup.lookup)。 3.将项目和库模块使用同样的名字存盘(当然了,后缀是不能够一样的哦)。 4。从 VB 6中的项目菜单中选择References .然后选中Microsoft ActiveX data objects 2.0 library, Microsoft ActiveX Data Objects Recordset 2.0 library. 文件的 代码 如下: Public Function html_combo(comboname As String, Lookup_field As String) As String Dim outstring As String Dim conn As ADODB.Connection Dim rst As ADODB.Recordset Dim sqlstring As String Set conn = CreateObject("ADODB.Connection") Set rst = CreateObject("ADODB.Recordset") '下面这些 数据库 中的字段名只是为这个例子设的,你完全可以根据自己的需要修改 代码 Sqlstring = "SELECT [Lookup_Description],[Lookup_Key] FROM _ [Lookup_Table] WHERE [Lookup_Field] = '" & Lookup_Field & "'" '在这可输入你连接 数据库 的用户名和密码,现在就算客户端看见了 ASP 源 代码 '他也不可能知道你使用的是什么密码了,呵呵 conn.Open "DSN=Sumnet;UID=;PWD=.;" rst.Open sqlstring, conn, 3, 3 If Not rst.EOF Then rst.MoveFirst outstring = "<Select name='" & comboname & "'>" Do While Not rst.EOF outstring = outstring & "<Option Value='" & rst.Fields("lookup_key") & "'>" & _ rst.Fields("lookup_description") & "</Option> " rst.MoveNext Loop End If outstring = outstring & "</Select>" html_combo = outstring rst.Close conn.Close End Function 代码 结束,呵呵,基本上没什么 技术 难点把,现在保存你的项目并且开始编译工作。 1。打开Visual Studio 6中带的Package Deployment Wizard 程序 。 2。选择你刚才建立的ActiveX项目文件。 3。选择Package 4。选择你要打包的脚本或使用默认脚本 5。选择标准 安装 6。选择一个放置你 安装 文件的目录 7。选择single cab. 8。其他均默认,然后单击下一步 9。现在 安装 程序 完成后,把它拿到你的IIS服务器上 安装 把。 下面给出如何调用你自己做的这个组件的 代码 : <%@ Language=" VB SCRIPT" %> <% Set look = Server.CreateObject("keiths_lookup.lookup") %> <HTML> <BODY> <%=look.html_combo("State","States")%> <BR> <%=look.html_combo("Position","Positions")%> <BR> <%=look.html_combo("Age_group","Age_Groups")%> </BODY> </HTML> 你看, asp 如此的简单,谁看见了源文件你都不用担心了,可以看到, 使用ActiveX DLL 技术 可以很好的保护你的重要的 代码 ,你需要安全的部分, 但我可不希望以后大家都牢牢地看住自己的 代码 不愿意公开了,毕竟 国内的 软件 行业还远远落后,需要大家齐心协力才能够一起进步呀。 |