| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2235 人关注过本帖
标题:[转贴]动态加载dll
只看楼主 加入收藏
lzn3303768
Rank: 1
来 自:土星
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-5-24
收藏
 问题点数:0 回复次数:7 
[转贴]动态加载dll
我们都知道VB加载dll可以通过vb中引用来实现,可是需要动态引用呢?我通过摸索发现可以先regsvr32那个dll,然后在vb中createobject(dll插件为vb编译,若为标准dll,loadlibrary即可)。 详细代码如下
程序代码:
 
Dim t As String 
Open "list.txt" For Input As #1 
Open "reg.bat" For Output As #2 
Do Until EOF(1) 
Input #1, t 
Print #2, "regsvr32 " & t & " /s" '注册控件 
t = Replace(t, ".dll", "")
List1.AddItem t 
Loop 
Close 
Close 
Shell ("reg.bat") 



'使用部分 
Dim a As Object 
Dim b As String 
b = List1.Text & "startclass" 
Set a = CreateObject(List1.Text & "." & b) ‘工程名 + . +类名 
a.run
原帖地址:[url]http://www.[/url]
搜索更多相关主题的帖子: 加载dll quot 动态 Dim Input 
2008-05-24 22:15
三断笛
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:31
帖 子:1621
专家分:1617
注 册:2007-5-24
收藏
得分:0 
CreateObject效率比较低 MSDN上说的
2008-05-24 22:33
lzn3303768
Rank: 1
来 自:土星
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-5-24
收藏
得分:0 
关键是动态的,要不才不用createobject呢
2008-05-25 09:12
flyue
Rank: 10Rank: 10Rank: 10
来 自:江南西道
等 级:贵宾
威 望:19
帖 子:3465
专家分:1563
注 册:2006-6-20
收藏
得分:0 
要是用户的电脑里没有regsvr32.exe或regsvr32.exe被病毒感染了那怎么办?

天之道,损有余而补不足.人之道则不然,损不足以奉有余.孰能有余以奉天下,唯有道者.
2008-05-25 14:40
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
[bo][un]flyue[/un] 在 2008-5-25 14:40 的发言:[/bo]

要是用户的电脑里没有regsvr32.exe或regsvr32.exe被病毒感染了那怎么办?

一般不考虑吧
2008-05-25 18:55
lzn3303768
Rank: 1
来 自:土星
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-5-24
收藏
得分:0 
回复 4# flyue 的帖子
程序自己内置一个,运行时释放出来
2008-05-25 21:18
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
[bo][un]lzn3303768[/un] 在 2008-5-25 21:18 的发言:[/bo]

程序自己内置一个,运行时释放出来

好主意!
2008-05-25 21:31
lzn3303768
Rank: 1
来 自:土星
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-5-24
收藏
得分:0 
用二进制存贮到时候释放(不可用字符,用字符的不能运行)
2008-05-25 21:46
快速回复:[转贴]动态加载dll
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016655 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved