.NET编程中使用旧有的COM组件
本文以使用W3 JMail为例
1. 生成包含Metadata(元数据)的DLL 在jmail的安装目录,键入以下命令,将生成jmail_dotnet.dll TlbImp jmail.dll /out:jmail_dotnet.dll 事实上,因为实际的JMail组件为一"unmanaged"(不受控) COM组件,因此需要一个Proxy在ASP+应用程序和COM组件之间搭桥。 2. 放置 Metadata DLL 对于ASP+页面,有两种途径: 1)置于该页面所在目录的bin子目录; 2)置于该页面所在的目录。 对于第二种方法,在每一个需要使用JMail的ASP+页面,我们都需要使用一个@Assembly语句,因此推荐使用第一种方法,将jmail_dotnet.dll拷入该页面所在目录的bin子目录。 对于普通的C#程序,将它和源码放在一起就行了。 3. 取得组件的有关详细信息 我们需要知道 1) Namespace (用于@Import语句或using语句) 2) 准确的类名 3) 方法和属性的数据类型 4) 方法和属性精准的拼写(C#严格区分大小写) 这些信息可以用NGWS SDK自带的工具IL (Intermediate Language) Disassembler 解析刚刚的Metadata DLL得到。详细的信息就不多说了,好好看看吧。 4. 使用 两个最简单的例子 —————————————————————————————— C#程序 //C#:sendmail.cs,使用csc /r:jmail_dotnet.dll sendmail.cs编译 using System; using jmail; public class jmailversion { public static void Main() { SMTPMail email = new SMTPMail(); String strVersion = email.Version; System.Console.WriteLine(strVersion); } } —————————————————————————————— ASP+页面: <% @Page Language="C#" %> <% @Import Namespace="jmail" %> <% SMTPMail email = new SMTPMail(); String strVersion = email.Version; Response.Write(strVersion); %> —————————————————————————————— SunADM@2K1007 http://www.aspgreat.com http://www.dotnet 上一篇:WindowsForm登陆窗体的建立 下一篇:Visual Studio.NET企业级结构设计版评测 更多相关文章
|
推荐文章
精彩文章
|