用.net开发asp组件

4/14/2006来源:ASP技巧人气:15502

有一个老项目是asp的,但是有些功能在asp上实现不了,.net中倒是很容易实现,所以就引出了标题所述是事情。
因为是第一次做,花了整整一天的时间,也走了一些弯路,现在把它总结一下。

Step 1.
在vs2003中新建一个类库项目,在"项目属性"-"配置属性"-"生成"中,设置"为 COM Interop 注册"为True

Step 2.
添加一个类,文件名无所谓
namespace TEST
{
 public class dosm
 {
  ....
  public string test()
  {
   return "Hello, world!";
  }
 }
}

生成项目

Step 3.
新添加一个.asp文件
<%
set obj=Server.CreateObject("TEST.dosm")
response.write obj.test()
%>

浏览这个.asp文件时显示 "Hello, world!", 成功调用
进行其他操作也是类似。

 

注意事项:

1.如果要在其他机器上使用这个组件,则把生成的.dll文件拷贝到对应的机器上,然后用"regasm your.dll /codebase" 进行注册,regasm 这个程序在 "%SystemRoot%\Microsoft.NET\Framework\%FrameworkVersion%"目录下。

2.返回的数据类型可能有一些限制,比如数组类型,在vbscript中就不怎么好访问(我没有试出来 :( ),不知大家有什么好方法

3.被调用的函数不能是静态函数,否则会找不到。