VS2005里,做个DLL让ASP调用貌似没有2003里那么复杂了~
当然了,你按照2003的思路做也能实现的~
2003里需要有接口,需要手动强命名,在2005里都不需要了~
2005里的操作相对来说比较的简单~
例子例子,例子最方便说清楚的~
拿这个做个类库,在项目--属性里“为程序集签名”,.snk的文件,可以和你的命名空间一样~
还有个很要命的地方,2005里添加了一个东西来控制是否“对 COM 组件不可见”,需要把[assembly: ComVisible(true)]这个设置成true~
Guid在2005里已经有了,不用再向2003那样做个接口手动一个Guid~~
这些都做完了,编译生成一下吧~随便Debug还是Release~~
在.net命令提示里进入刚才编译出的DLL所在的文件夹,输入regasm /tlb:Dll.tlb Dll.dll注册DLL,并生成一个tlb文件(这个这个,你的DLL名字是什么就改成什么,我这个只是是针对我自己的~)
继续在控制台里运行这个:gacutil /i Dll.dll 把这个Dll加入全局Assembly Cache~
差不多了差不多了,搞个ASP的文件看看的~
然后就看到输出了~~
差不多大概就是这样了,基础不好,人懒,不查资料,自己琢磨的,有什么不妥的地方帮我纠正一下,先谢了~
当然了,你按照2003的思路做也能实现的~
2003里需要有接口,需要手动强命名,在2005里都不需要了~
2005里的操作相对来说比较的简单~
例子例子,例子最方便说清楚的~
using System;
namespace Dll
{
public class Class1
{
public string ReturnStr()
{
return "最简单的看看成不成的~";
}
}
}
namespace Dll
{
public class Class1
{
public string ReturnStr()
{
return "最简单的看看成不成的~";
}
}
}
拿这个做个类库,在项目--属性里“为程序集签名”,.snk的文件,可以和你的命名空间一样~
还有个很要命的地方,2005里添加了一个东西来控制是否“对 COM 组件不可见”,需要把[assembly: ComVisible(true)]这个设置成true~
Guid在2005里已经有了,不用再向2003那样做个接口手动一个Guid~~
这些都做完了,编译生成一下吧~随便Debug还是Release~~
在.net命令提示里进入刚才编译出的DLL所在的文件夹,输入regasm /tlb:Dll.tlb Dll.dll注册DLL,并生成一个tlb文件(这个这个,你的DLL名字是什么就改成什么,我这个只是是针对我自己的~)
继续在控制台里运行这个:gacutil /i Dll.dll 把这个Dll加入全局Assembly Cache~
差不多了差不多了,搞个ASP的文件看看的~
<%
set obj = Server.CreateObject("Dll.Class1")
dim str1
str1 = obj.ReturnStr()
response.write(str1)
%>
set obj = Server.CreateObject("Dll.Class1")
dim str1
str1 = obj.ReturnStr()
response.write(str1)
%>
然后就看到输出了~~
差不多大概就是这样了,基础不好,人懒,不查资料,自己琢磨的,有什么不妥的地方帮我纠正一下,先谢了~