byyt's Blog

程序员 一生无法停止学习的职业

借助命令行工具自动化Webpart的部署过程

首先看看DLL+DWP方式的Webpart部署到Bin中的过程(使用VS.NET2003开发):
1 编译Webpart工程得到DLL

2 复制所需的DLL到SPS网站的Bin目录中

3 修改SPS网站的Web.Config文件,增加SafeControl申明

4 因为修改了Web.config,所以需要重新启动IIS

5 使用Webpart时从某个路径导入DWP文件到SPS站点中

以下过程借助CABARC.EXE工具和一些批处理实现以上过程的自动化:

1 将CABARC.EXE放到项目的输出路径中,比如bin/Debug

2 打开Webpart项目的属性页,选中通用属性下的生成事件,在生成后事件命令行中输入以下代码段

CABARC n "$(ProjectDir)/cab/Asp600.sharepoint.webpart.cab" "$(ProjectDir)*.dwp" *.dll "$(ProjectDir)*.xml"
"$(ProjectDir)/cab/install.bat"

注:代码段包含了两行,该段代码要能运行,必须确保CABARC.EXE在项目的当前输出路径中,当然也可以修改代码段来指定CABARC.EXE的位置

3 Install.bat文件内容如下

set path=%path%;c:/Program Files/Common Files/Microsoft Shared/web server extensions/60/BINstsadm -o addwppack -filename "D:/Work/SharePointHome/Asp600.SharePoint.Webpart/CAB/Asp600.sharepoint.webpart.cab" -force
iisreset

完成后,编译Webpart项目,VS.NET会将编译结果打包成CAB,并安装到SPS站点中然后重新启动IIS以完成Webpart的部署。这样,开发人员只须要做编译操作,然后就可以直接到SPS中查看Webpart的最终执行结果了,如果将项目的输出路径直接定位到SPS网站的Bin中就同时考虑到了项目的开发阶段和部署阶段,从而使IDE在整个软件周期中起到了更好的作用

本文参考Build WebPart Cab File Within VS.net IDE


 
阅读更多
上一篇Webpart中用DataGrid绑定SQL数据
下一篇如何使只有部分信任级别的Webpart程序集能访问拥有强名称的类库
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭