大家好~关于DLL调用我想问个问题
1。按照精华区的文章vb的dll
public sub msg(strMsg as string)
msgbox strMsg
End sub
生成 msgstr.dll文件
robot脚本中
dim i as object
set i = createobject("project.Class1")
…………
…………
运行过程中的错误是
runtime error '429'' - module dll line 9 ,object creation failed - bad object class
2. 如果robot中这样写,
declare sub msgstr Lib "msgstr" (a as integer)
Sub Main
msgstr(2)
End Sub
运行会显示
failed to load f:\autora\project\testdatastore\defaulttestscriptdatastore\tms_scripts\dll.rec sub or function 'msgstr in dll 'msgstr' not found
谢谢~
节日快乐' 注册了么?
在运行中 写入
regsrvr32dll包含路径
这册dll
这样你就可以直接用了
set i = createobject("project.Class1") 注册了
Robot中的代码如下
dim objshell as object
Set objShell = CreateObject("Wscript.shell")
objShell.run("RegSvr32 F:\AutoRA\dll\1\Project.dll")
Dim a as object
set a = createobject("Project.class1")
a.msg("s")
DLL 为Project.dll
运行中先提示 F:\AutoRA\DLL\1\Project.dll 中的DLLRegisterServer成功
然后还是runtime error '429'' - module dll line 9 ,object creation failed - bad object class
不知道哪里错了
谢谢楼上的回答
望赐教 帮你顶下,我也要问这个问题
调用Dll 说明
1.调用普通DLLDeclare Function GetForegroundWindow Lib "user32" Alias "GetForegroundWindow" () As Long
调用失败会提示:sub or function "***" not found.
2.调用COM接口DLL,在VB中即ActiveX dll
dim o as object
set o = createobject("project1.Class1")
o.msg "hello dll"
调用前,先将DLL 注册(regsvr32 X:\*.dll),这样CreateObject 才能找到路径
如果没注册会提示"429 bad object class"
[ 本帖最后由 qjwxsd 于 2006-3-24 11:29 编辑 ]
页:
[1]