好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

VS2010程序打包与自定义操作.docx

14页
  • 卖家[上传人]:re****.1
  • 文档编号:417489969
  • 上传时间:2024-02-15
  • 文档格式:DOCX
  • 文档大小:276.05KB
  • / 14 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • VS2010打包安装部署这里简单介绍如何在VS2010开发环境下制作安装项目,其中包括如何设置开机启动、删除注册表及安装后自动运行,加上卸载功能1、创建安装项目打开VS2010,点击菜单上的“文件”>>“新建”>>"项目”,弹出如下对话框3VisuaBasicVisualCBVisuaJ匚,・Visual2[rvjMllSliieldLEStudioImtdlvrJiK,=>如上图所示,在"其他项目类型”中选择"安装项目”,根据自己的需求命名,这里命名为“MySetup”,选择保存路径这样就创建了一个安装项目2、在安装项目中添加其他应用程序项目点击菜单上的“文件”>>“添加”>>“现有项目”,弹出如下对话框拦*:_a期-■EU...*^^501*盼-RK,3■饪*小%flSHS佳biriMiW均15:56京帏弟,Pr-apeniftJOII/3/W15:56虹.ServiceRefcrein<«20I1/M1QIS56宝峰s:说Dj9LaS«rvieeHis&e加EL/#通l攻VisualCSDrftje折Ml国玷tCcproChfJFoj•fJ?RQJ这里选择之前已经做好的一个WPF应用程序项目3、将可执行文件(.exe)、类库(.dll文件)及所需图片加入安装项目中右击"MySetup”>>"视图”>>“文件系统”,主窗口显示文件系统界面,如下图玷目丽鼻蚀上治责怦命LJ.程目t・*.卫宜兰n节丈临死以用户・01D用尸富Bl淫用户邹-电事-JUSttm£M>«iupJx右击"应用程序文件夹”>>“添加”>>“项目输出”,弹出如下对话框。

      0ataSsrviceHost滑^?内容文件敬件蚱XML博均暨集®^CQ!舌翊说明2);包含由项目生疵DLL或EXE.在“项目”选项中选择“DataServiceHost”,按住“Ctrl”键,选中“主输出”,单击“确定”再右击“应用程序文件夹”>>“添加”>>“文件夹”,命名为“Images”,在“Images”中放入应用程序需要的图片,右击“Images”〉〉^加”>>“文件”,在弹出的对话框中添加所需的图片4、创建快捷方式在“应用程序文件夹”中右击“主输出来自DataServiceHost(活动)”,如下图女件关程序笑怪序集程序宦陞席集:顼Mmge■弓8earDatjLib.dll■JDitaClientdll-OotaGoflcctdll口D^ibServicejdllqReaEDatjUbrary.dlI'JYigLib.dtl削建王益E来扫S旧钮nrkeHosU活部的快适方式(D英切on膨【D)■曜口帅点击“创建主输出来自DataServiceHost(活动)的快捷方式”,将快捷方式重命名为“我的WPF应用程序”,这里可以根据需要命名在“文件系统”中的“用户的“程序”菜单”添加文件夹“我的WPF应用程序”,这里可以根据需求命名,将之前“我的WPF应用程序”快捷方式剪切到该文件夹中。

      同理可以在“文件系统”中的“用户桌面”中创建快捷方式在用户桌面中不要添加文件夹)5、实现安装程序卸载这里直接引用了Windows系统中自带的一个卸载程序,该卸载程序在“C:/Windows/System32”文件夹中,名称为“msiexec.exe”,右击“应用程序文件夹”>>“添加”>>“文件”,将“msiexec.exe”加入“应用程序文件夹”中名棒美型'JBearDatadb.dll■-□Data-Client.-dll程季集立件她出JDotaCQlhctdll• ■JDataService,dtl口ReaIDataLibrary.d^l..J三届由^3Data心观活朝d内以悻氏刍®也MMeHw折舌爵同步骤4,创建卸载程序的快捷方式,这里建议不要在"用户桌面”中创建卸载程序,难看!!!重点,“卸载快捷方式"的属性“Argument”值设为7x{710AD120-3D4C-430D-A9FA-A1D504465CC8}”“{710AD120-3D4C-430D-A9FA-A1D504465CC8}”为产品编号(ProductCode),可在“MySetup属性框口中找到左击“MySetup”(不是右击),再点击属性窗口,如下图。

      厘性-9XMy^etup第暑项目凰性,I■■nm■■■■■!■wjA.ddRemov?Programskon(无)Author的⑥司名程DescriptionD#teetN«w*drstalledVer5iTrueInstallAllUsersFalseKjeywordtLocalizationChinese(S-implified)Manufacturer歌订公司名称Manufartitre-rLIrlPr«BulldEMemProductCode(71040120^3D4<-430O-A5FA-A1ProductN^imeMysetupR.emc^ePreviousVersionsFalseftjunPMfitjIdEwntSuppcrtPhoneSupp-ortUrlTnargetPlatform»8&TideMy-&etup(32W94AS-知鸵-45ID8R&EEVer^ion“ProductName”属性值就是上述的“{710AD120-3D4C-430D-A9FA-A1D504465CC8}”6、改变各快捷方式的图标这里只拿“我的WPF应用程序快捷方式”为例,其他同理在“应用程序文件夹”中的“Images”中添加需要的".ico图标”,这里添加一个“mywpf.ico”图标。

      如下图司myvupf.i^Q般目琦1■鼻的女噜攻LU用户的•朗-章单客用户奠面右击“我的WPF应用程序快捷方式”>>“属性窗口”,属性窗口如下图f*药的WPF双用隆嗦女岩安裂徨性■也(Nanrifr)^rgumentsfoldersew*曲期Icon国■ShswCmdvsdsfNormalTargetTramitiwFahrWorlangFolder设置“Icon”属性,选择“Images”中的“mywpf.ic7、实现开机启动右击“MySetup”>>"视图”>>“注册表”,主窗口显示如下图W目的■:虻判螂改J'1KE<€LASSES_ROOT_jHKE¥JC:URRENT_U5ER」>lk£¥_L,OCJL_waCMiNf:□AXEV.UtERSLi用.口丹元在“HKEY_LOCAL-MACHINE”文件夹下新建键“Software">>"Microsoft">>"Windows">>"CurrentVersion">>"Run”,在“Run”文件夹新建字符串值,命名为“DataServiceHost.exe”,可根据需求命名,右击“DataServiceHost”>>"属性窗口”,其中“Value”属性设为“[TARGETDIR]DataServiceHost.exe”。

      如此,便实现了开机启动8、实现安装后自动运行及删除注册表实现这两个功能就需要一些技巧,左键点击“解决方案”选中,然后点击菜单上的“文件”>>“添加”>>“新建项目”,如下图选择“类库”项目类型,点击确定即可在解决方案中添加一个类库项目右键点击该类库项目>>“添加”>>“新建项”,如下图』.理ClassLibrary2|>座]Properiiies文件茉选择“安装程序类”,命名为“Installer”在“Installer.cs^码中重写如下方法:///

      ///函数入口一一主函数///publicstaticvoidMain(){}publicInstaller1(){InitializeComponent();}//////重写安装完成后函数///实现安装完成后自动启动已安装的程序//////protectedoverridevoidOnAfterInstall(IDictionarysavedState){base.OnAfterInstall(savedState);}//////重写安装过程方法/////////publicoverridevoidInstall(IDictionarystateSaver){base.Install(stateSaver);}protectedoverridevoidOnBeforeInstall(IDictionarysavedState){base.OnBeforeInstall(savedState);}//////重写卸载方法//////publicoverridevoidUninstall(IDictionarysavedState){base.Uninstall(savedState);}//////重写卸载完成后函数///实现安装完成后自动删除注册表//////protectedoverridevoidOnAfterUninstall(IDictionarysavedState){base.OnAfterUninstall(savedState);}//////重写回滚方法//////publicoverridevoidRollback(IDictionarysavedState){base.Rollback(savedState);}这里对protectedoverridevoidOnAfterInstall(IDictionarysavedState){和protectedoverridevoidOnAfterUninstall(IDictionarysavedState){}M行如下自定义操作(当然也可以对其它方法进行自定义以实现其它功能)。

      protectedoverridevoidOnAfterInstall(IDictionarysavedState){base.OnAfterInstall(savedState);Assemblyasm=Assembly.GetExecutingAssembly();stringpath=asm.Location.Remove(asm.Location.LastI。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.