如何把asp COM组件移植到aspx

问题:之前用C++研发了一个ASP的服务端COM组件a.dll,现要将此组件移植到aspx页面中使用,页面中使用的语言为C#、vbscript、javascript。

解决:

1、tlbimp a.dll生成 alib.dll;

2、将alib.dll拷贝至站点根目录下的bin目录下,没有bin目录的话,在站点根目录下创建;

3、修改alib.dll的权限,使IIS_IUSRS用户具备执行权限;

4、regsvr32 a.dll注册组件;

5、aspx页面中的代码

①使用C#

<%@ Page Language="C#" AutoEventWireup="true" aspcompat="true" %> // aspcompat="true" 支持asp

<%@ Import Namespace="aLib" %> //注意a的大小写,在运行tlbimp时会有命名空间的信息

<html>

<title>test</title>

<body>

<%

Server.CreateObject("a.xx.1"); // a.xx.1为对象的名称

%>

hello world.

</body>

</html>

②javascript

<%@Page aspcompat="true" %>

<%

var obj = Server.CreateObject("a.xx.1");

obj = null;

%>

③vbscript

<%@Page aspcompat="true" %>

<%

dim objThis

objThis = Server.CreateObject("a.xx.1")

ojbThis = Nothing

%>

ps:如果是asp中vbscript

<%

dim objThis

Set objThis = Server.CreateObject("a.xx.1")

Set objThis = Nothing

%>