zoukankan      html  css  js  c++  java
  • VS2005打包时加入卸载功能

    最近刚用VS2005进行开发,在程序完成,进行打包发布时,突然发现用VS2005打包时出现了一个问题。
    先来看看VS2003时的做法:(两种做法皆来源于网络)

    VS2003打包時加入卸载功能:

    方法一:
    1.在打包項目中添加文件msiexec.exe(一般可在c:\windows\system32\下找到)
    2.在文件系統視圖中選擇應用程序文件夾,在msiexec.exe上按右鍵,選擇創建快捷方式,重命名快捷方式為"卸载".
    3.更改此快捷方式的Arguments 为"/x {產品id}",產品id的值為打包項目的ProductCode屬性值.

    方法二:(推荐)
    1.先生成安装包,记下ProductCode,下面要用到
    2.用VS.net建立一个新的控制台程序uninst.exe文件
    'power by: landlordh
    'for 2000,xp,2003
    Module uninstall
        Sub Main()
            Dim myProcess As Process = New Process
            If System.Environment.OSVersion.ToString.IndexOf("NT 5") Then
                myProcess.Start("msiexec", "/X{2B65D4A9-C146-4808-AB4B-321FB0779559}")  '改为自己的ProductCode
            End If
            myProcess.Close()
        End Sub
    End Module
    3.将控制台程序BIN目录的exe文件加入到打包程序文件中,在程序组创建uninst.exe的快捷方式

    在VS2003时,本人一直是用方法一进行打包,但是在VS2005下,用方法一是行不通的。出现问题如图:



    程序生成时,会出现如图所示错误。(不知道为什么VS2003中可以,VS2005却不可以,不知哪位大侠可以告知)。

    所以VS2005中,只能用第二种方法来添加卸载的功能了。
    把方法二中步骤二的代码改写成C#如下:
             static void Main(string[] args)
            {
                System.Diagnostics.Process.Start("msiexec", "/X{460247B2-5FF0-4AF7-B4BC-B8BA3025231B}");
            }

    用步骤二,顺利进行打包OK. :)

  • 相关阅读:
    Qt:The CDB Process Terminated!调试失败
    关于【error C3646: 未知重写说明符】的若干种可能性
    QT:圆角设置
    Qt修改图片的背景色及设置背景色为透明的方法
    index首页加载数据库数据方法
    jsp+jstl实现登录验证
    java 分页
    初始Ajax学习笔记
    python wechat
    python json dumps load 区别
  • 原文地址:https://www.cnblogs.com/chenbg2001/p/1637359.html
Copyright © 2011-2022 走看看