半条命2揭出的惊人内幕:NV FX 系列显卡支持DX9有缺陷(原创)- -| 回首页 | 2004年索引 | - -遇到“无法获取加密服务提供程序 (CSP)”该怎么办?(原创)

如何让asp调用.Net组件(原创)- -

                                      

.Net提供了丰富的程序资源库,但是一般.Net组件只能够给aspx网页调用,如果让asp网页也能调用.Net组件呢?


.Net提供了丰富的程序资源库,但是一般.Net组件只能够给aspx网页调用,如果让asp网页也能调用.Net组件呢?首先要把你的.Net类从ServicedComponent继承下来,然后使用 regsvcs 注册它,另外还要给你的服务器增加.Net库的路径。这样你就可以通过asp的Server.CreateObject方法来创建.Net组件了。

(1) 我们在.Net命令行创建一个 strong name,这会生成一个扩展名为 snk 的 strong name 文件:

sn cs001.snk

在项目的 AssemblyInfo.cs 文件中加入类似的语句,请注意snk文件的路径

[assembly: AssemblyKeyFile("..\\..\\cs001.snk")]

 

(2)下面的代码是C#程序,我们把它编译成cs001.dll

using System;
using System.EnterpriseServices;


    [Transaction(TransactionOption.NotSupported)]
    public class MyClass : ServicedComponent
   {
       public MyClass()
       {
       }

       public string Greet()
       {
              return "hello world!"
       }

   }

然后,我们使用.Net命令行输入在cs001.dll的文件夹内输入以下命令:

regsvcs cs001.dll

现在我们就可以从asp页面调用这个组件了。

注意事项:

1. 必须给服务器添加.Net库文件的路径(也就是把.Net库文件的路径加到环境变量%path%里去)

2. 在更新组件的时候,请使用 regsvcs /u cs001.dll 这样的命令先卸载组件,如果组件正在被使用的话,还需要停止IIS服务才能更新并重新注册组件。

- 作者: surfirst 访问统计: 2004年12月10日, 星期五 12:27 加入博采

Trackback

你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=360225

回复

- 评论人:sa   2005-07-29 21:03:57 

azzzza

评论内容: