请教ASP调用VC编写的组件问题。
用VC写了一个读取数据库内容的COM组件,在VB里调用正常,如:
Private Sub Command1_Click()
Dim demo As COMDEMOLib.demo
Set demo = New COMDEMOLib.demo
Dim name As String
demo.GetORADataExample 1, name
MsgBox name
End Sub
但是在ASP里调用值不返回来,知道什么原因
代码如下:
welcome to asp
<%
Set obj=Server.CreateObject("COMDEMO.demo")
dim myString
obj.GetSQLDataExample 1, cstr(myString)
Response.Write "name:" + myString
set obj=Nothing
%>
执行结果:
welcome to asp name:
也就是没有返回值。
如果这么调用:obj.GetSQLDataExample 1, myString
那么就会出错:
welcome to asp
Microsoft VBScript 编译器错误 错误 '800a03f6'
缺少 'End'
/iisHelp/common/500-100.asp,行242
Microsoft VBScript 运行时错误 错误 '800a000d'
类型不匹配: 'GetSQLDataExample'
/ComTest/index.asp,行5
请各位指教。
问题点数:50、回复次数:3Top
1 楼baby21st(愚人|南京www.njci.net)回复于 2004-08-02 11:54:53 得分 25
在VB中调用这个函数GetSQLDataExample会出错吗?
不是GetORADataExample这个
Top
2 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2004-08-02 12:13:25 得分 25
Set obj=Server.CreateObject("COMDEMOLib.demo")Top
3 楼lifeforu(向右走)回复于 2004-08-02 12:51:34 得分 0
to baby21st(愚人) : 不好意思,在VB里GetSQLDataExample 和GetORADataExample都实现了,没有问题的,我是拷代码的时候没注意
to liuxiaoyi666(兔子) : 按你的办法行不通的,之前我是按你这么搞的,运行提示创建失败。
我的GetSQLDataExample 第二个参数要求是一个输入输出参数,不知道在ASP里面如何实现...
还就是不加cstr()的话说类型不一致,不知道何故。
还请各位指点。。Top




