ASP.NET调用COM

本文介绍了如何在VC++中使用ATL COM AppWizard创建COM组件,然后在ASP.NET中利用TlbImp.exe工具将COM组件转换为装配件,以便于受控代码通过装配件调用COM对象。通过ildasm.exe工具查看生成的装配件详情。

在VC++z中利用ATL COM AppWizard写一个COM组件。
   在VS.NET中利用“型别库导入工具”(
TlbImp.exe),从COM组件的型别库生成一个装配件,这样受控代码就能通过访问这个装配件对象来访问COM组件对象。

ildasm.exeVS.NET自带工具)察看生成的装配件。

如图所示:

装配件中,我们主要关注这几个接口函数:

System.String GetFile (  )

void SetCmd ( System.Int32 nStepNum )

void SetFile ( System.String bstrFileIn )

new void SetLog ( System.String bstrFileIn )

就是原来我们在COM中定义的接口函数。

 

然后,在ASP.NETC#代码中中添加对上面生成的装配件的引用,
再通过类似以下简单的几行代码实现
COM组件的调用:

try

{

RUNLib.compileClass  mc =new RUNLib.compileClass();

              RUNLib.Icompile imc =(RUNLib.Icompile)mc;

              TextBox1.Text = imc.GetFile();

//以下用于垃圾收集

              mc=null;

              imc=null;

              GC.Collect();

              GC.WaitForPendingFinalizers();

              GC.Collect();

       }

catch(Exception ex)

       {

Label5.Text ="Exception : " + ex.Message;

       }

COM组件注册和配置。(以Widows 2000为例, Windows Server 2003和Windows XP类似)

      单击“开始”,“运行”,填入Cmd.exe , 确定。
在命令行窗口,输入cd切换路径到COM组件所在目录,

   假如组件是exe文件:输入 组件名.exe /regserver ,回车;

   假如组件是dll文件,输入 regsvr32 组件名.dll,回车;

   关闭命令行窗口。
单击“开始”,“运行”,填入 Dcomcnfg.exe ,按回车。 


选中 server(组件名) ,单击 “属性”



单击“安全性”,选择“使用自定义启动权限”,单击“编辑”,添加用户ASPNET , 访问类型:允许调用。一路 确定,退出 “分布式COM配置”程序。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值