描述:
我开发了一个COM, 希望可以在ASP中调用.
我查了一些档案, 只有关于ActiveX控件的信息, COM与ActiveX有什么不同?能不能在WEB上直接调用COM?
我的COM是连接数据库的, 主要是把业务逻辑层的内容在COM实现, 这样可以让ASP代码看起来较为清晰(主要是因为本人不太了解ASP, 希望把所有VC能做用VC实现).
在这里我希望COM充当一个中间层(业务逻辑层)的作用, COM只需要在Server上运行.
请各位朋友给点建议, 如果能给出几个这方面优秀的档案连接就够好.
先谢了.
PS: 由于不太了解ASP, 说的不清楚请见谅.
解决方案1:
progID 是在COM 中 *.rgs文件中定义的,你可以查看下.
现假设ATL OBJECT为 Test.Web ATL OBJECT中有一借口函授负责与数据库建立连接,为Connect(Bstr bstrDest,BSTR bstrResult)
则可以这样调用
set oServer=Server.createObject("Test.Web")
dim Ret
Ret = oServer.Connect("数据库源机器名")
.....
有类型库就可以用
解决方案3:
set oServer=Server.createObject("你定义的对象")
dim Ret
Ret = oServer.InterfaceFunction(....) 你定义的接口。
.....
简单一点:和在html中使用ocx是一样的,例如:
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>New Document </title>
</head>
<script>
function OutMsg()
{
BillJybgd.dococx.foofile("ok!");
}
</script>
<body>
<form id="BillJybgd">
<OBJECT id="dococx" height="56" width="184" classid="CLSID:FCA249DC-DB88-4D64-9973-F8951D753607" data="data:application/x-oleobject;base64,3Emi/IjbZE2Zc/iVHXU2BwADAAAEEwAAygUAAAsAAAATAAAAAAALAP//" codeBase="./KMDocCab.CAB#version=1,0,0,1">
</OBJECT>
<INPUT id="Button1" type="button" />
</form>
</body>
</html>