如何在vb中用代码添加dll,引用其中的类

如何在vb中用代码添加dll,引用其中的类,第1张

set xml=createobject("MSXML2DOMDocument")
不能引用那就只能用declare引用DLL中已经导出的函数
declare function 函数名 lib "DLL名" [alias "导出函数真名"] (参数列表) as long
不太明白你"引用这个dll的代码"是什么意思
其实创建了Object就已经把dll动态地引用进来了

这是说你缺少引用一个程序
就是说你项目用到了一些控件,但是你项目本身没有引用它
可以添加using
或者在页面最上面添加System, Version=1050000, Culture=neutral, PublicKeyToken=969db8053d3322ac
或者在你项目中BIN目录下右键添加引用
下面给你的列子
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defaultaspxcs" Inherits="_Default" %>
<%@ Register Assembly="SystemWebExtensions, Version=10610250, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="SystemWebUI" TagPrefix="asp" %>

第一步:将要用到的控件拷贝到当前工程目录下,右键单击该控件,选择属性,记下文件大小。注意,应记下以字节为单位的具体数字,而不是多少K,以备编程使用。
第二步:引用并正常使用该控件。
第三步:新建资源文件加入工程,在资源文件编辑器中添加所使用的第三方控件为自定义资源(CUSTOM),资源号使用默认的101。如果使用了多个控件则分别添加到资源文件的101、102资源项中,脱壳代码也要作相应的修改。
第四步:编写控件脱壳代码,使其读取资源文件的数据,在程序当前目录下生成控件。
代码如下:
Private Const OCXSIZE = 57344 '欲生成的控件大小是57344Byte,名字为CoolToolBarocx
Sub Main()
Dim Ocx() As Byte 'OCX是个Btye类型的数组
Dim Counter As Long
Ocx = LoadResData(101, "CUSTOM") '将自定义资源中101号资源读入数组OCX
'注意,微软的帮助中对加载自定义资源的说明有错误,自定义资源标识为"CUSTOM"而不是帮助所说的数字10
If Right(AppPath, 1) = "($%$43%^#ASD#2@$#f$%^) Then '读取程序所在路径,判断是否为根目录并分别处理
'程序在根目录下
If Dir(AppPath & "CoolToolBarocx") = "" Then '程序路径下有无控件,无则生成控件
'以二进制方式写(生成)控件(CoolToolBarocx)到主程序所在的目录
Open AppPath & "CoolToolBarocx" For Binary As #1
For Counter = 0 To OCXSIZE - 1 '注意因为从0 Byte开始因此以文件大小 - 1Byte 为终值
Put #1, , Ocx(Counter)
Next Counter
Close #1
End if
Else
'程序不在根目录下
If Dir(AppPath & "\CoolToolBarocx") = "" Then '程序路径下有无控件,无则生成控件
'以二进制方式写(生成)控件(CoolToolBarocx)到主程序所在的目录
Open AppPath & "\CoolToolBarocx" For Binary As #1
For Counter = 0 To OCXSIZE - 1 '注意因为从0 Byte开始因此以文件大小 - 1Byte 为终值
Put #1, , Ocx(Counter)
Next Counter
Close #1
End if
End if
Form1Visible = True '主程序所用控件已经生成,显示主窗体,进入主程序。
End Sub
注意:将以上代码作为一个模块添加到工程中,并在工程-工程属性设置中将启动对象选为Sub Main,即上面的脱壳代码。然后编译生成EXE文件,将该EXE文件拷贝到其他没有安装所用控件的计算机上运行一下看看是否实现了控件携带之金蝉脱壳。如果是那么OK!以上为使用一个控件的情况,使用多个控件方法基本相同,不在赘述。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/13397293.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-28
下一篇 2023-07-28

发表评论

登录后才能评论

评论列表(0条)

保存