惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
爱范儿
爱范儿
博客园 - 三生石上(FineUI控件)
Vercel News
Vercel News
M
MIT News - Artificial intelligence
L
LangChain Blog
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Azure Blog
Microsoft Azure Blog
J
Java Code Geeks
Recent Announcements
Recent Announcements
Stack Overflow Blog
Stack Overflow Blog
人人都是产品经理
人人都是产品经理
IT之家
IT之家
F
Fortinet All Blogs
博客园 - 聂微东
U
Unit 42
Martin Fowler
Martin Fowler
腾讯CDC
博客园_首页
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
量子位
阮一峰的网络日志
阮一峰的网络日志
博客园 - Franky

博客园 - 我不是冷狐冲,我就是一酒壶

又长草啦 普通HTML的input调用Ext js DatePicker的实现方法 MVC框架下的图表使用(二) MVC框架下的图表使用(一) 关于消息队列的研究 GridView样式及排序问题 新年新开始 WebBrowser控件显示XML流 VS2005(C#)里读取及改变App.config里appSettings节的值 WebService开发心得 - 我不是冷狐冲,我就是一酒壶 - 博客园 VS 2005 C#操作 XML Ajax学习笔记 VML图表控件 含吃蛇,加了存档功能了 在cs页取得当前Web页输出的HTML - 我不是冷狐冲,我就是一酒壶 - 博客园 VML学习笔记(本人会不断更新此文章) 长白山游记 贪吃蛇 C# C/S下DataGrid根据数据库里的值(int型)显示ImageList里的图片
ASP调用C# DLL - 我不是冷狐冲,我就是一酒壶 - 博客园
我不是冷狐冲,我就是一酒 · 2007-01-22 · via 博客园 - 我不是冷狐冲,我就是一酒壶

ASP 调用C#编写的DLL的方法

        前一阵子一直在忙一个项目,其中要用到ASP调用C#的DLL,网上资历料不少,总结了一下,写个例子

出来

         首先建立一个类库的项目
 之后编写一个接口,ASP要调用的对象实现这个接口,代码如下(要有一个没有参数的构造函数) 

using System;
using System.Runtime.InteropServices;namespace Test
{
    [Guid(
"123AC4E1-BEB0-45a1-BE3F-91BDD16A117A")]
    
public interface ITest
    {
        [DispId(
0)]
        
string TestString();
    }
public class Test : ITest
    {
                                
//从工具下的创建GUID取得
        public Test()
        {
        }
#region ITest 成员public string TestString()
        {
            
return "Test";
        }
#endregion
    }

        之后对这个类进行强签名(如果这个DLL调用的其它DLL的话,也要进行强签名),运行Visual

Studio 2003 .net 命令提示,执行sn -k 后加输出的DLL所在目录,如sn -k 文件路径\test.snk,之后会生

成test.SNK文件,打开AssemblyInfo.cs文件,在[assembly: AssemblyKeyFile("")]里填写生成的SNK文件

的路径,如[assembly: AssemblyKeyFile("文件路径\\test.snk")],之后重新编译
 
    
        使用regasm工具对程序集进行注册,运行Visual Studio 2003 .net 命令提示,执行regasm /tlb

DLL文件
          
        之后使用gacutil工具将DLL程序集安装到全局程序集缓存中,也是先运行Visual Studio 2003 .net

命令提示,再执行gacutil /i 要注册的DLL的路径

  
         之后就可以asp里调用测试啦
         sn.exe 
         regasm.exe
         gacutil.exe
         这三个工具都可以在Visual Studio .net 2003的安装目录下的SDK\v1.1\Bin目录下找到