版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VS添加项目模板及项模板目录TOC\o"1-5"\h\z\o"CurrentDocument"1问题的引入 3\o"CurrentDocument"2环境描述 3\o"CurrentDocument"3知识准备 33.1VS项目模板及项模板位置 3\o"CurrentDocument"3.2VS模板介绍 3\o"CurrentDocument"3.2.1VSTemplate元素 4\o"CurrentDocument"3.2.2模板参数 4\o"CurrentDocument"4添加各模板 54.1添加项目模板 5\o"CurrentDocument"4.1.1制作模板 5\o"CurrentDocument"4.1.2将模板COPY到指定位置 7\o"CurrentDocument"4.1.3重设VS环境 8\o"CurrentDocument"4.1.4添加B/S项目模板 84.2添加项模板 9\o"CurrentDocument"5结束语 10\o"CurrentDocument"6参考资料 10问题的引入在做项目的时候,需要代码规范,版本信息不可或缺,但是每次在文件头COPY版本信息很麻烦,而且也不太容易控制。为了更好、更规范的去完成项目,需对项目文件做统一的格式来处理。环境描述OS:WINDOWS2003开发环境:VS2008语言:C#架构:C/SB/S知识准备VS项目模板及项模板位置默认情况下,与产品一起安装的模板位于以下位置:<VisualStudio安装目录>\Common7\IDE\ltemTemplates\语言\区域设置\<VisualStudio安装目录>\Common7\IDE\ProjectTemplates^言\区域设置\(此处为微软提供位置,实际处理中与此信息有所出入,具体位置见下文)VS模板介绍一个模板的例子:〈VSTemplateType二"Project"Version二"2.0.0"xmlns二"/developer/vstemplate/2005"><TemplateData><Name>Mytemplate</Name>〈Description>Abasicstarterkit</Description><Icon>Templatelcon.ico</lcon><ProjectType>CSharp</ProjectType>〈/TemplateData>〈TemplateContent><ProjectFile二"MyStarterKit.csproj"><Projectitem>Forml.cs〈Projectitem><Projectitem>Forml.Designer.cs〈/Projectitem><Projectitem>Program.cs</Projectitem>〈Projectitem>Properties\AssemblyInfo.cs</Projectitem>〈Projectitem>Properties\Resources.resx</Projectitem><Projectitem>Properties\Resources.Designer.cs</Projectitem><Projectitem>Properties\Settings.settings</Projectitem><Projectitem>Properties\Settings.Designer.cs</Projectitem></Project>〈/TemplateContent>〈/VSTemplate>3.2.1VSTemplate元素VSTemplate元素是.vstemplate文件的根元素,其属性如下:属性说明Type将模板标识为项目模板或项模板。此属性的值可以为Project或itemVersion指定模板的版本号。VisualStudio2005中的模板的Version属性值为2.0.0兀素说明TemplateData必选元素。指定将此模板分类的数据,并定义此模板在“新建项目”或“添加新项”对话框中的显示方式。TemplateContent必选元素。指定模板的内容。WizardExtension可选的元素WizardData可选的元素3.2.2模板参数所有模板都支持在对模板进行实例化时进行参数替换,以替换关键参数,如类名和命名空间。当用户在“新建项目”或“添加新项”对话框中单击“确定”时,这些参数将由后台运行的模板向导替换。模板参数以$参数$格式进行声明。如:$safeprojectname$。模板的保留参数如下表:参数说明clrversion公共语言运行库(CLR)的当前版本。GUID[1-10]用于替换项目文件中的项目GUID的GUID。最多可以指定10个唯一的GUID(例如,guidl))。itemname用户在添加新项对话框中提供的名称。machinename当前的计算机名称(例如,Computer。])projectname用户在新建项目对话框中提供的名称。registeredorganizationHKLM\Software\Microsoft\WindowsNT\CurrentVersion\RegisteredOrganization中的注册表项值rootnamespace当前项目的根命名空间。此参数用于替换正向项目中添加的项中的命名空间safeitemname用户在"添加新项"对话框中提供的名称,名称中移除了所有不安全的字符和空格safeprojectname用户在“新建项目”对话框中提供的名称,名称中移除了所有不安全的字符和空格。time以DD/MM/YYYY00:00:00格式表示的当前时间userdomain当前的用户域username当前的用户名webnamespace当前网站的名称。在Web窗体模板中使用此参数以确保类名称是唯一的。如果网站位于Web服务器的根目录下,则此模板参数将解析为Web服务器的根目录year以YYYY格式表示的当前年份添加各模板上面的一些知识点可能会有些凌乱,但都是在后文中会用到的,所以上面的要了解下。添加模板分为两类,一类是新建项目时的项目模板,一类是在项目中添加新项时的项模板。其步骤如下:制作模板将模板COPY到指定位置重设VS环境添加项目模板此处将以做一个C/S的WINFORM模板来说明添加一个模板的操作方法,其他项目模板类似,只有路径上有所不同,路径不同的会给出相关路径。制作模板MICRO提供了制作模板的方法,/zh-cn/library/xkh1wxd8.aspx,但我在操作时没有按照这样的方法来处理,我的作法是将已有的模板COPY出来,修改,放到新的文件夹,步骤如下:将<VisualStudio安装目录>\Common7\IDE\ProjectTemplates\CSharp\Windows\2052下的WindowsApplication.zip文件COPY出来。解压,如图1修改form1,^J;fl.cEQnbLyiii£o.ce:csWindowsApplicatipd.vstenpl暑te£orm].cs垄forml.lesigner.csPrcgran.csResonrceE.Designerce函JbaEoxirces.resK迸jSitt.:ngG.HQElgTiC!!'.CE二Smtt】ngs.SEltings■*r§3W1rsdows 11a-a.*tiart.csproj图1windowsApplication.zip修改前如图2,修改后如图3,注意图中红色的位置即3.2.2中提到的模板参数lj回SystAF);Sys<en.Callectioils.Generic;Syst^n.匚tamporiETLlM匸VeI;Systmn.D^ta.:Syst亡iti.Drzixig;二 -r:anarivereionj--3.5)usingSystenuLinq;jjeraii£j125incSjstan.Text;tieingSyst.Winlws.TcfmE;^ingi-Laingusing:usinsusin^yj 「 ^LO^Elnamespace|$e包E^p『口jEctnammgpublicpari.iilclassF^rn1:FprmpiiLLicForml0£[8lInitializeCompijnentQL]图2form1.cs修改前护舲迄ion按标用版玄誓比申明沖."Allrightsreserved.文件名称:Fermi.CS笊要;文斗功戢简妥说专当前版木:「者:卩3"n日期:fctime?自J逹标识»$usernarie$$year$覧恤搽視:农修改挹述»-*/#an.ifez:i:-n版眾及版本變化申明Sjrstem;Systmn.CuLlectSjrstem;Systmn.CuLlectlctle.Gmneric;Sjn"tzn.ConponejitModel:Systen.Dai.日;Sj.'stei.Hrawing;usingusingusingfusing$)超(Jt:argetEFam曲皿kvEmi口瑯二二3.5Jusing勿航en.Linq;^andi£^.ucin$書严tamTowt;usingSystern.Vindcira.Forms;///<sunmtir7>///'///Qsurnnarj^>///<sunmtir7>///'///Qsurnnarj^>putlicp»srtiJ.alusForml:Fore色用的屈恺ja 何歴有的才満图3form1.cs修改后同样修改Program.CS,assemblyinfo.cs文件修改csWindowsApplication.vstemplate,如图4|c?Ktnlver31口n二w1口呼ejacodiEff="ulr-Bn?>■^VSTeurplBte:Veraion*"3D"Type»'T£Diectwxm1ns»,Rh.ttp://schemssi..inic匚口耳口壬匚asoul1*deve丄口口已書bai口].县七已/2匚|口!5"沖<Trinrplate-Data>Package-*-;JAEQ^ECl-3口iF-1lc^-BF^E-ClDQD电FTnEFEQ}" />VD亡SCClptlonFftCXage-^-iFAEa^ECl-SOlF-llCU-BriB-OOCOir^SEFBC^1^-^2315^/>Paeksiae="7AI04ECI-SO1F-1li!3-Br4B-OOCO4T79EFBC"ID=,T^554IT/><TewlsceID>tilerasat匸C3barji・WlndLoirar'orm^Ap^1lcaclan</TetnjiLacelP^<ProjectType>C5hsjrp</ProjectType><RequitedFraireworkUersidn>2-0</KequiredFcbiteudckUersinn><SarrCnrile-i:>1口 口匸rCirde-E^<Winrfcieri?TPartntcat亡ijof1cjToRdLID口孑1</Nunti亡匸OtFarrntCoiDeffCirl亡sTdEd1IUjj><CreaceNexFolder>ciue</CieaueNeioFoldeo•[■<=£t..lL:^:tI'.i.d_..=:7jj-jiiz.'.p;Li.-_lu-■I-^ur.l;^--逹亍标恿捋刍0:新建顶目中呈亍”用末柑匿有的辿打区对vFh 丄貞1】包邙县倉七匚巧=<2工uy■14已1)谆1£0」丄匕1|】旦1盒已>__■■■|iWajT.'MBlUi口日口2冏体应用程序打H.sme>L-"-__~</Templa.teData><TetrgjlaDeCcnteat-?Peplac-ePeLEarrecers-,Tirue,TTarQEtFlIeiNaiiiE二存Ptcjpe工 la弓acs">AssetnI]LyIntoBca</PiPeplac-ePeLEarrecers-,Tirue,TTarQEtFlIeiNaiiiE二存Ptcjpe工 la弓acs">AssetnI]LyIntoBca</Pid]eciIiein>TargetF匚口pextxes-1!Resqux匚wn・zesx""ARs弓口uz匚=日・zssk^/PeqjectIteni>ReplacePacarrete-匚琴^”七匚ue1*Ta■匚getF1leWame—*Pr口卩已工匕1巴三1Res口口:匸匚巴日-Lesigner-cs**>Resour匚巴日.Designer-匚s</Pr口j巴匸t.I:t.>=JTVATargetF1ltName-,!TFE,apsrc.1es\Settimga.ae匚tmga!!>Eettings-settiiLgs</Projectlteurd-BepIscePararnececs=^true17TarjerF1lensme=,irProjjere1es\Sect-inDrsEes1orrier,csrr>5ertltiQS.Dealgnee.ca</ProjectPej31acePat&irecers=ITT,fue,TOpenlnEdlcor=wrrueFortei・C3</ProJeccIcem>Beplac-ePeLEamecers-,Tiruen!>rcirinlJDeslgnet:acb</PtroJeccIceiri>Brp b=r=--trU=^t.uzblJp.□^/Pcojrctlb^曲于義将锤mes文件名暮関胭gl仏gIKSIffi聂览一*,如兀幢BUt幷45的」干盂teSfJL处<PrD]ecrIreiD<Px口juutHtejh<Pr口jeutTtenj■■:ProjectItew^Projectlrew<PrdJecT;lT;eto<PrD]ecrIreiD<Pzdqectltejh</Proje匚匕;</Temp1a.t亡匚口处匸ent></V^Template>图4csWindowsApplication.vstemplate修改windowsapplication.csproj,因为我修改了program.c的文件名,才需修改此文件,如无修改文件名则不需修改此文件。将所有文件压缩为WindowsApplication.zip,注意压缩时不能加文件夹,如图5auuantiLyinfr<■g*indjowsAppli崔form!.cs爸*£orml.dez:压缩丈件名也)Z1XpplicatioiL.zip配置迪崔Startup.<^WLrid«ws«ppliuali更新方式Qp|港替拯:auuantiLyinfr<■g*indjowsAppli崔form!.cs爸*£orml.dez:压缩丈件名也)Z1XpplicatioiL.zip配置迪崔Startup.<^WLrid«ws«ppliuali更新方式Qp|港替拯:Z#压络丈臧式rt*压缁万式(0压缗分卷太小,字书电)-压谿选Mr压轴后删潮文件(L)厂创建自解压棺式压轴丈件d)厂创建回实.礙丈件③)厂添加月户身扮校验信亘①厂添m恢复『录co厂测试压箱文件1)厂锁定压细文件QC)帝助图5压缩文件示意图至此,WINFORM的项目模板已做好。4.1.2将模板COPY到指定位置我的做法是将<VisualStudio安装目录>\Common7\IDE\ProjectTemplates\CSharp\Windows下的所有内容COPY到一个新的文件夹,如COMPWINDOWS,删除COMPWINDOWS\2052下的所有内容,将上文生成的模板放在2052目录下,将COMPWINDOWSCOPY到<VisualStudio安装目
^>\Common7\IDE\ProjectTemplates\CSharp\4.1.3重设VS环境打开VisualStudio2008命令行工具,执行devenv/setup,其路径如下图:©©包&nr+-n^ra-nrP n■t/FdiHrm趙©©包&nr+-n^ra-nrP n■t/FdiHrm趙JJIC-ArL跟毎I'M璽Sjyt+囲Visial"ud】ozjlqk沆兼容工具币令用厅|^|VisualSludioSDOB |箜ViiialS'.udiuE3CG远程i周;if匪童viznistudiosoae远程调试開配畳討导5TJFVisualStudio200&命令行工且执行如熄應/$etup.管理工具MieroseftD££ihlElf£jVisualStudioTools卜MicrosoftVisualStudio60Oracle-OraDbllg^hoinelSybase快誓软件HyperSnapBHyperSnapBFlashGct.项目婪型迫飜d):VisualStudio已宣羟的霍板赣建理目-*■Windows窗部应用程序.盘■项目婪型迫飜d):VisualStudio已宣羟的霍板赣建理目-*■Windows窗部应用程序.盘■控制台应月程亭用■Fiztdc■注越1技空坤尖coipniunfs£;岀現谴Tit直名称®:解决方案解决方案宅称龜::应77氐需晁不创逹新辭汶方灵T厂创建解决方案酌目录①)图6:VISUALSTUDIO2008工具打开方式你可以通过这样的方法根据需要做自己的模板(WINFORM程序)。看一下效果:打开VS,新建、新建项目,出现如下图:i-Yi伫=■■-PowerBesiener由数拒库项日申•耳也语言: 0-^risualBflsi[白•¥5al心智菲设窑[T}-Office数站库:■■-Hapor*t\-^C7:■■-lflorkfloijf七亠一+片I用于创建具百WirHaw百稠俗用尸界面的应用程序的项目NETFrameviork3.5)|'A'li.JuwsFormsApjlicationl|11:Vi'em^图7:最终效果4.1.4添加B/S项目模板上文是添加C/S项目模板的方法,添加B/S项目模板的方法与其类似,有区别的地方在于COPY模板的地方,B/S将生成的模板直接COPY到<VisualStudio安装目
录>\Common7\IDE\ProjectTemplates\CSharp\Web\2052即可,注意要将压缩文件改名,以免覆盖原有的文件。4.2添加项模板制作过程与4.1同,要注意的地方是项模板的位置。C/S项模板的位置:<VisualStudio安装目录>\Common7\IDE\ltemTemplates\CSharp\Code\2052类模板位置;<VisualStudio安装目录>\Common7\IDE\ltemTemplates\CSharp\WindowsForms\2052窗体模板位置B/S模板位置:<VisualStudio安装目录>\Common7\IDE\ItemTemplates\Web\CSharp\2052,包括类、ASP窗体、WEB服务、用户控件等均在此处。COPY的方式同4.1.4最终的效果图:ktYimdovsFornsJ塔沁昊“J念地鞋恬匡■■兰程氏卑信岂丑件申■“曲IIriDperl由“3弓I用由■“"5ktYimdovsFornsJ塔沁昊“J念地鞋恬匡■■兰程氏卑信岂丑件申■“曲IIriDperl由“3弓I用由■“"51Farml必^JJScrLirH^kg]MDI畑体\四XMI.帖牛匚抒表岂导罡占也數恬库遥存咽代讨亚件-l:i口E.«p>:>rtsrig::―VarlcflowH-FoverDes]suer不■釦壬尸亡什|空白WindowE啬体名稀(J): |lUl1l2.Lbml注VisnuuLLStulio已安装的梭板.四kmlN塑Im-<a却CF也名indjri服芬国师架构寸}:辽r玄件图8:添加新项效果图、感茨拉述;-、感茨拉述;-*/__-#CTLd±-Qgi.:tl版祝艮版本吏化申明*丈件名称:C1耳滴要:文HusingSyEtem;ucingSystarn.CoLlactions.Ganaric:using.Systern.Linq;Lusing5ystern.leit;i'11*'/乜ummary》//.-■i'11*'/乜ummary》//.-■类功能说明///(sommiry^cl电带Classi应由的子閨图9:新加类的效果图5结束语至此,所有的添加工作完成,VS模板可以自定义参数,但由于在此处没有太大的用处,故未使用。值得注意的地方为:要注意压缩为ZIP。如果是英文版的话,要将文中的2502目录改为1033。(此条未测试,是我估计的)6参考资料名称出处创建项目模板HYPE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 12766-2026动物油脂熔点测定
- (正式版)DB37∕T 1647-2010 《桑蚕鲜茧分级(茧层率法)》
- 危急值护理的临床案例
- 安全生产事故应急处置预案及方案
- 安全生产月主题方案
- 安徽省天长市2025-2026学年初三寒假延长作业语文试题含解析
- GB13495.3-2026《消防安全标志 第3部分:设置要求》修订解读
- 福建厦门华侨中学2025-2026学年中考预测金卷语文试题(安徽卷)含解析
- 重庆市长寿区市级名校2026年中考模拟语文试题试卷含解析
- 2026年江西省赣州市信丰县重点达标名校初三教学情况调研(二)英语试题含解析
- 制药厂绩效考核制度
- 2025-2030中国成像流式细胞仪市场行情走势与投资前景研究研究报告
- 2026年及未来5年市场数据中国植物照明行业发展潜力预测及投资策略研究报告
- 2026江苏徐州地铁集团下属运营公司招聘笔试备考试题及答案解析
- 医疗场景人因工程学-洞察与解读
- UG NX 10.0完全自学指南
- 医疗器械生产质量管理规范自查表(2026版)
- 2026年冶金过程自动化控制试题含答案
- 2026年河南单招宠物经济大类动物医学专业技能实操题库含答案
- 模拟教学案例设计的真实性原则
- 电商教学合同
评论
0/150
提交评论