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 ...
随机推荐
- 02_IO操作的基本规律(InputStream,OutputStream,Reader,Writer,FileReader,FileWriter,BufferedReader,BufferedWri
模拟BufferedInputStream,编写一个类 package toto.IO; import java.io.IOException; import java.io.InputStre ...
- Objc中为何某些类的属性要设置为copy而不是strong?
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 不知道大家是否注意,我们再使用一些第三方类的时候大多数情况下对 ...
- Android初级教程以动画的形式弹出窗体
这一篇集合动画知识和弹出窗体知识,综合起来以动画的形式弹出窗体. 动画的知识前几篇已经做过详细的介绍,可翻阅前面写的有关动画博文.先简单介绍一下弹出窗体效果的方法: 首先,需要窗体的实例:PopupW ...
- Java EE 之 过滤器入门学习与总结(1)
使用Filter技术来配合开发会使得开发变得简单起来.简单的一个例子就表现在"乱码问题"上.不使用Filter的话,我们有可能需要为每一个网页设置字符编码集,如request.se ...
- 最简单的基于FFmpeg的视频编码器-更新版(YUV编码为HEVC(H.265))
===================================================== 最简单的基于FFmpeg的视频编码器文章列表: 最简单的基于FFMPEG的视频编码器(YUV ...
- HMM:隐马尔科夫模型-维特比算法
http://blog.csdn.net/pipisorry/article/details/50731584 目标-解决HMM的基本问题之二:给定观察序列O=O1,O2,-OT以及模型λ,如何选择一 ...
- android 标准OTA升级流程
标准的OTA升级流程包括一下几个步骤: 1.Android设备首先会与OTA服务器进行交互,如果有更新会推送给客户.推送的信息常常会包含OTA更新包的下载地址和一些版本信息. 2.Update程序会将 ...
- ADO.NET常用方法释义
先列个列表,下面的就是常用的数据库操作的方法. ExecuteNonQuery 释义:对链接执行的SQL语句,并返回受影响的行数(注意:用它来执行目录操作,如查询数据库的结构,创建表等数据库对象,或通 ...
- UITabBarController及三种控制器的…
第一部分:UITabBarController 标签视图控制器 UITabBarController 标签视图控制器继承自UIViewController,一经创建自带一个视 ...
- Linux多线程实践(2) --线程基本API
POSIX线程库 与线程有关的函数构成了一个完整的系列,绝大多数函数的名字都是以"pthread_"开头,要使用这些函数库,要通过引入头文<pthread.h>,而且链 ...