SharePoint 解决方案手动打包简单介绍
介绍:在使用SharePoint中,我们经常需要做的就是打包解决方案,我们来介绍下SharePoint解决方案的手动部署,我自己觉得,解决方案是SharePoint中非常好的一个功能,部署和使用起来相当方便,尤其配合Feature的使用,可以对相应功能的开启和关闭,废话不说了,开始我们的解决方案打包部署。
前期准备-[makecab命令、.ddf格式文件、manifest.xml],了解下以上三项,这个对于手动打包解决方案,是非常必要的。
·Makecab命令
MakeCAB是微软提供的制作CAB的文件的命令,而这个命令使用的文件格式就是.ddf,我们可以在运行中输入cmd,然后输入Makecab回车,就可以看到命令使用和参数(如图1),我们手动打包解决方案,也就是使用MakeCAB命令进行打包。

(图1)
·ddf文件
然后介绍下.ddf文件,我们主要了解的就是文件的格式,给大家一个网上找来的例子,然后简单介绍下,大家就会有所了解。如下面的.ddf文件,我们会把manifest.xml和manifest1.xml两个文件打包到wsp包中,当然,这是一个简单的例子,我们打包的时候,需要的不是这样的文件,而是类似dll和ascx之类的文件。
这样的.ddf文件,打包以后的wsp文件结构,就是根目录下有一个manifest.xml文件,而其中test文件夹下还有manifest1.xml文件,我们可以手动创建12/bin/Template等类似文件夹,就可以打包到相应位置了。
|
.OPTION EXPLICIT .Set CabinetNameTemplate=mytest.wsp//解决方案名称 .set DiskDirectoryTemplate=CDROM .Set CompressionType=MSZIP//压缩方式 .Set UniqueFiles=on .Set Cabinet=on .Set DiskDirectory1= //目录 manifest1.xml test\manifest1.xml//前面的为当前目录文件名称 后面的在解决方案中的位置 manifest.xml |
·manifest.xml
这个文件,是打包解决方案的一个很重要的文件组成,给大家一个参考的例子,这个文件的作用,是把解决方案包里面的文件,放到指定位置去。特别的,Solutionid这个值,是一个唯一值,不可以重复,每次要重新生成。
|
<?xml version="1.0"?> <Solution SolutionId="505e68e7-55ea-4b66-b5d3-6c41e4cc7296" xmlns="http://schemas.microsoft.com/sharepoint/"> <Assemblies> <Assembly DeploymentTarget="WebApplication" Location="*.dll"> <ClassResources> <ClassResource FileName="*.ascx" Location="*.ascx"></ClassResource> <ClassResource FileName="*.ascx" Location="*.ascx"></ClassResource> </ClassResources> </Assembly> <Assembly DeploymentTarget="GlobalAssemblyCache" Location="*.dll"> <SafeControls> <SafeControl Assembly=" " Namespace=" " TypeName="*" Safe="True" /> </SafeControls> </Assembly> </Assemblies> <TemplateFiles> <TemplateFile Location="ControlTemplates\*.ascx"/> <TemplateFile Location="IMAGES\*.jpg"/> </TemplateFiles> <RootFiles> <RootFile Location="ISAPI\*.asmx"/> <RootFile Location="TEMPLATE\LAYOUTS\*.asmx"/> <RootFile Location="Template\layouts\2052\MCS\FlashNews\*.js"/> </RootFiles> </Solution> |
打包过程,首先就是手动建一个层次目录,里面建好类似12下的目录方式,然后把相应的文件放到相应位置,写ddf文件(这个文件的位置,就是指定打包那些文件,打包到解决方案中的位置);然后写manifest.xml文件,指定相应的文件,部署后到服务器场的位置。 然后,在运行中输入cmd,然后输入makecab命令,makecab /f Sample.ddf稍等片刻即可打包wsp包。
注:这是自己学习手动打包的笔记,makecab文件可以参考百度百科的介绍,其实,现在打包解决方案远远没有这么麻烦,不过,自己还是希望了解这个打包的过程,也算学习的一种体验吧。
******************************************************************************
作者:霖雨
出处:http://www.cnblogs.com/jianyus
本文版权归 霖雨和博客园共有,欢迎转载,但请注明出处。
SharePoint 解决方案手动打包简单介绍的更多相关文章
- O365(世纪互联)SharePoint 之调查列表简单介绍
前言 SharePoint中为了提供了很多开箱即用的应用程序,比如调查列表就是其中之一,同样,在O365版本里(国际版和世纪互联版本均可),也有这样的调查列表可以供我们使用,而使用起来非常方便和快速, ...
- SharePoint 2010 网站备份还原简单介绍
今天尝试了SharePoint2010网站的备份和还原,从网上搜一些文档看看,然后自己试试,感觉和2007的操作没什么太大的区别,跟大家分享下自己尝试的命令行方式和数据库的方式,2007自己常用的也是 ...
- 系统升级日记(3)- 升级SharePoint解决方案和Infopath
最近一段时间在公司忙于将各类系统进行升级,其最主要的目标有两个,一个是将TFS2010升级到TFS2013,另外一个是将SharePoint 2010升级到SharePoint 2013.本记录旨在记 ...
- SharePoint Word 转换PDF服务介绍及示例
前言:在SharePoint使用过程中,经常会发现将文档进行格式转换的需求,之前,看到SharePoint 2013有将PPT转换PDF文档的服务,后来,才发现SharePoint 2010开始,就有 ...
- SharePoint 2016 每天预热脚本介绍
使用SharePoint的朋友们应该知道,SharePoint每天夜里有自动回收的机制,使环境每天把占用的内存都释放出来,以确保不会累计占用过多内存导致服务器崩溃. 我们可以打开IIS,选中我们的应用 ...
- webpack入门篇--1.简单介绍
简单介绍: webpack是一个模块打包工具,给js准备的打包工具,可以把很多的模块打包成很少的文件 目标: 1.切分依赖数,分到不同代码块里,按需加载,懒加 载 2.任何静态资源都可以被视为一个模块 ...
- [转]ZooKeeper学习第一期---Zookeeper简单介绍
ZooKeeper学习第一期---Zookeeper简单介绍 http://www.cnblogs.com/sunddenly/p/4033574.html 一.分布式协调技术 在给大家介绍ZooKe ...
- Postman安装与简单介绍
Postman简介 Postman是一个 Chrome 扩展,能提供强大的 Web API HTTP 请求调试功能.Postman能够发送任何类型的http请求,支持GET/PUT/POST/DELE ...
- 用Ant手动打包android程序,android分包机制解决65536方法过多异常
Android利用ant手动打包 首先我们要给自己的IDE eclispe配置ant,默认的eclipse是集成了ant构建工具的,但是google提供的Android集成开发工具ADT,里面封装了E ...
随机推荐
- JDBC编程-优化程序(六)
首先完成DTO类的编写 DTO类是data tranfer object也就是数据传输类,DTO主要用于数据的传输操作,其中包含属性值,以及构造方法和getter ,setter方法等,不会包含业务逻 ...
- 2.关于QT中的Dialog(模态窗口),文件选择器,颜色选择器,字体选择器,消息提示窗口
1 新建一个空项目 A 编写 .pro文件 QT += gui widgets HEADERS += \ MyDialog.h SOURCES += \ MyDialog.cpp B 编写MyD ...
- C++对象模型的那些事儿之三:默认构造函数
前言 继前两篇总结了C++对象模型及其内存布局后,我们继续来探索一下C++对象的默认构造函数.对于C++的初学者来说,有如下两个误解: 任何class如果没有定义default constructor ...
- tomcat如何路由映射网址
对于web容器来说,根据请求客户端路径路由到对应的资源属于其核心功能,假设用户在自己电脑上使用浏览器输入网址http://www.test.com/test/index.jsp,报文通过互联网网络到达 ...
- 【一天一道LeetCode】#232. Implement Queue using Stacks
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Impleme ...
- 【一天一道LeetCode】#165. Compare Version Numbers
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 来源: htt ...
- iOS中 static变量与全局、局部变量的区别 !
static变量与全局.局部变量的区别 全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量.全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式. 这两者在存储方式上并 ...
- 《java入门第一季》之TreeSet存储自定义对象并保证排序和唯一
上一篇用一个简单的例子,介绍了treeset集合存储的内部过程,这里再完善其存储自定义对象保证唯一. 需求:A: * 自然排序,按照年龄从小到大排序 * B: * 成员变量值都相 ...
- 精通CSS+DIV网页样式与布局--设置表单和表格
表格和表单是网页中非常重要的两个元素,在上篇博客中,我们简单的介绍了CSS的页面背景设置,今天小编继续来介绍CSS的相关知识,在我们的CSS中如何设置表格和表单,首先,来看一张思维导图,通过图简单的预 ...
- pig简单的代码实例:报表统计行业中的点击和曝光量
注意:pig中用run或者exec 运行脚本.除了cd和ls,其他命令不用.在本代码中用rm和mv命令做例子,容易出错. 另外,pig只有在store或dump时候才会真正加载数据,否则,只是加载代码 ...