当COM+的组件已经撰写完成后,接着就是要如何将撰写好的组件注册的主机的【组件服务】上
以往小喵用VB6撰写组件,要注册组件时,只需要在组件服务中建立空的Package,然后将写好的组件托拉进去即可,要修改时,只要组件的机码兼容,也只需要将Package停止后,将组件覆盖即可。请参考组件撰写、注册过程录像文件
但是进入.NET开发组件,小喵发现无法使用原来的方式处理,必须透过【.NET Framework 2.0】的【SDK命令提示字符】,使用这样的Command窗口透过下指令的方式来注册,注册后组件会依照原件撰写时所指定的Package存放,而如果该Package不存在,也会自动产生
首先Server除了要安装.NET Framework 2.0以外,还得安装SDK才能使用,相关链结如下:
.NET Framework 2.0
/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5&DisplayLang=zh-tw .NET Framework 2.0 SDK
/downloads/details.aspx?familyid=FE6F2099-B7B4-4F47-A244-C96D69C35DEC&displaylang=zh-tw
注册与反注册过程如下
手先准备好两个批处理文件,分别用来注册与反注册组件
注册组件(RegNetCom.bat):
REGSVCS %1.dll
GACUTIL /i %1.dll反注册组件(UnRegNetCom.bat):
GACUTIL /u %1
REGSVCS /u %1.dll有人反应原有方式GAC无法移除,所以小喵稍微改写了一下,这样注册移除就可以都正常了。【New】
安装完.NET Framework SDK后,会有【SDK命令提示字符】,首先将您要注册的组件,复制到适当的目录中,小喵通常是将相关的dll复制到【D:\Application\(项目名称)\】中,其中项目名称依不同需求会订定不同的名称,例如:D:\Application\PDMO
接着将以上两个批处理文件(RegNetCom.bat、UnRegNetCom.bat)也复制到该文件夹中
然后开启【SDK命令提示字符】,假设组件产生后的dll名称为PDMOMenu.dll那么下以下指令:
注册时:
RegNetCom PDMOMenu 反注册(移除)时:
UnRegNetCom PDMOMenu
反注册时必须注意:组件是否有被呼叫起来→如果有→先停止Package
当组件注册完后,如果是该Package的第一个组件,还需针对组件设定【用户识别】让呼叫组件时可切换指定的账号权限执行,方式如下:
在Package上右键单击→内容 标识符→使用下列使用者 浏览→选取适当用户→输入该账号密码 确认
这样就能够依据需求,在呼叫该Package中的组件时,切换身分为指定的使用者,透过该用户的权限来执行组件了
如果觉得《N-Tiers开发方式(COM+组件的注册 修改)》对你有帮助,请点赞、收藏,并留下你的观点哦!