创建强命名程序集的WebPart
(一)创建强命名程序集:
1:使用强命名工具(Strong Name Utility)产生密钥对。
例如:SN -k MyCompany.keys
2:在源代码Assembly.cs中设置AssemblyKeyFile属性
3:重新编译,产生的程序集就是经过签名后的程序集了。
(二)获得生成的动态链接库的公钥
获取公钥 Public Key示例
C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin>
sn -T C:\Inetpub\YoungSem\Powerise.YoungSem.AD.ChangeMyPassWord\Powerise.YoungSem.AD.ChangeMyPassWord.dll
(三)写入...dwp文件
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2" >
<Title>更改当前用户登录密码</Title>
<Description>更改当前登录域用户的登录密码</Description>
<Assembly>Powerise.YoungSem.AD.ChangeMyPassWord, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d745594e7c96c5bb</Assembly>
<TypeName>Powerise.YoungSem.AD.ChangeMyPassWord.ChangePassword</TypeName>
<!-- Specify initial values for any additional base class or custom properties here. -->
</WebPart>
(四)压缩Cab包
使用 Cabinet Manager 压缩下列文件
WebPart1.dwp
Manifest.xml
生成的动态链接库
添加的资源文件
(五)导入SharePoint
使用Stsadm将WebPart导入SharePoint,也可以使用StsAdm图形化工具导入。
附:部署强命名程序集(全局部署):
如果希望一个程序集被多个应用程序访问,则程序集必须被放到一个CLR已经确知的目录下,从而能够自动到该目录找到该程序集。这个确知的目录称作全局程序集缓存(Global Assembly Cache),通常位于:C\Wndows\Assembly下。
我们可以使用工具GACUtil.exe,指定/i命令开关将一个程序集安装到GAC中。同样可以使用/u命令开关将一个程序集从GAC中卸载。注意:安装的程序集必须是强命名程序集。