几分钟教会你VS2003打包的过程

开发 后端
希望我的一点经验能给大家带来帮助,导致VS2003打包的原因也许还有很多,不过在你遇到错误时,可以先检查一下你程序中的字符串,没准就是他引起的问题啊。

我现在使用VS2005进行开发,在程序完成,进行打包发布时,竟然发现用VS2005打包时出现了一个严重的问题。先来看看VS2003打包时的做法:(两种做法皆来源于网络),供大家学习研究。

VS2003打包時加入卸载功能:

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

#t#方法二:(推荐)
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中打包时就比VS2003打包要复杂的多,只能用第二种方法来添加卸载的功能了。


把方法二中步骤二的代码改写成C#如下:

  1. static void Main(string[] args)  
  2.      {  
  3.          System.Diagnostics.Process.Start("msiexec", "/X{460247B2-5FF0-4AF7-B4BC-B8BA3025231B}");  
  4.      } 
责任编辑:chenqingxiang 来源: greystar的专栏
相关推荐

2009-11-25 13:41:53

使用VS2003

2009-11-25 10:14:43

2009-12-17 15:15:07

VS2008快捷键

2009-11-25 14:33:51

VS2003打包

2009-11-25 14:17:35

VS2003打包

2009-12-30 09:58:28

mpls标签

2010-03-01 18:13:22

Python程序

2009-11-30 17:00:05

VS2003窗口

2010-02-23 14:19:30

Python目录操作

2009-12-21 13:51:54

ADO.NET处理

2010-03-04 10:01:01

Android基本组件

2009-11-25 15:31:40

VS2003 SDK

2009-12-01 20:29:42

Visual Stud

2010-01-12 18:20:31

Visual C++

2013-07-02 09:58:38

ClojureClojure教程

2016-09-30 15:13:01

Python代码

2009-11-25 13:22:49

VS2003代码

2009-12-01 09:51:40

VS2003数据库

2009-11-30 13:27:12

Visual Stud

2009-11-26 11:30:12

VS2003控件
点赞
收藏

51CTO技术栈公众号