| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1841 人关注过本帖
标题:根据dll名(字符串),如何定义DLL对象
取消只看楼主 加入收藏
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:12 
根据dll名(字符串),如何定义DLL对象
呵呵,其实我也说不清楚.

就是说先定义一个string变量sDLL,然后将DLL名称赋予它.然后再定义个OBJECT对象变量, 可以用什么方法,通过字符串给OBJECT对象赋DLL.

其实我都荤了!
搜索更多相关主题的帖子: DLL dll 定义 字符 对象 
2010-08-13 15:33
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
, 运行不了,提示以下错误!
图片附件: 游客没有浏览图片的权限,请 登录注册
.
2010-08-13 16:24
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
我说的变量sDll, 是ActiveX 部件的名称.
2010-08-13 16:25
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
    Dim cls2 As ObjectsDll = "Class1"
'    Set cls2 = CreateObject(sDll)
2010-08-16 09:42
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
,拍了个回车, 结果发出去了.

    Dim sDll As String
    Dim ObjDll As Object
    sDll = "F:\work\开发的程序\财务系统\dll\Class01.dll"
    Set ObjDll = CreateObject(sDll)

能否这样写. 如不能,那又该怎么写. 高手帮忙!
2010-08-16 09:46
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
救命啊,你稍做解释麻.
2010-08-16 13:18
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
根据你写的, 似乎是说CreateObject(class,[servername]) 中的class必须现在系统中引用.
否则不能创建.

我的意思是 可以不可以不先引用,直接根据CLASS的名称,创建个实例.
2010-08-16 14:05
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
呵呵,谢谢你的关注.

你说的在程序里注册,应该是:
   1.在程序里先引用
   2.用Declare方法直接在程序块中申明引用.

这两种方法,我尝试都是可以的.
我是想问,有没有其他方法直接根据DLL里包含的ActiveX的名字(注意此名称为字符串形式)来调用.

其实我主要是想把所有系统功能,独立分成一个个DLL对象. 如果通过引用的形式,主窗体程序代码就得做大量的引用.
所以我就是想问问,是否可以直接通过DLL对象的名称,直接创建对象.
2010-08-16 16:47
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
谢谢楼上的.你提供的网页实例我看了,说实话挺难完全看懂.

里面说到的"不注册调用ActiveX Dll"主题,是强调不注册.而非我说的系统引用. 实例依然存
在"Private Declare Function DllGetClassObject Lib "dllDemo.dll" ( _
    rclsid As UUID, riid As UUID, ByRef ppv As Any) As Long"
这样的句子.

我就假设"ActiveX Dll"对象我已经在操作系统中注册了.我是否可以不通过 "工程-->引用-->选择
对象" 或者 "程序代码里 Declare 的方法" 这两种方法,根据对象名称而创建对象.

呵,我也查了很多网站资料, 貌似我太异想天开了. 我要的功能似乎根本不可能实现.

在挂一个晚上. 明天结帖拉!

谢谢大家拉!
2010-08-16 17:26
yefalai
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2010-8-12
收藏
得分:0 
以下是引用风吹过b在2010-8-16 17:50:05的发言:

CreateObject 函数,
不要求    2.用Declare方法直接在程序块中申明引用.

只要求在 注册表里存在注册信息就可以了.
不需要"用Declare方法直接在程序块中申明引用.",但需要在程序里"引用"吧.
我测试了下,注册后,如果不通过我上面说的两种方法引用,就会报错.
2010-08-17 10:27
快速回复:根据dll名(字符串),如何定义DLL对象
数据加载中...
 
   



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

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