我用C#编写的一个Windows窗体程序怎么样打包成一个安装包?

我用C#编写的一个Windows窗体程序怎么样打包成一个安装包?,第1张

照下面的一步步做,就可以做成安装程序包了

1 新建安装部署项目

打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定。

2 安装向导

关闭后打开安装向导,点击下一步,或者直接点击完成。

3 开始制作

安装向导完成后即可进入项目文件夹:

双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来。然后右击你的文件,创建快捷方式,然后把快捷方式分别复制或剪切到左边的"用户的'程序'菜单"和"用户桌面"中。这样安装程序安装完成后会在 "开始->所有程序"和"桌面"上生成程序的快捷方式。也可以直接在"用户的'程序'菜单"和"用户桌面"相应目录下新建快捷方式,然后定位到你的文件。

然后右击左边的"应用程序文件夹"打开属性对话框:将属性中的"DefaultLocation"的路径中的"[Manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是"C:\Program Files\你的用户名\安装解决方案名称";

然后打开解决方案管理器,右击你的解决方案名称,选择属性:打开的属性页中,选择"系统必备", 在打开的系统必备页中,在"指定系统必备安装组件的位置"中选中如下选择项:从与我的应用程序相同的位置下载系统必备组件。选上以后,在生成的安装文件包中包含.NetFramework组件 。好了,这样就完成99%了,然后点击"生成->生成解决方案",哈,生成成功!

4 制作完成

现在打开解决方案文件夹下的Debug文件夹,就可以看到生成的安装文件了。

5 关于"卸载"功能的添加

上面只介绍了简单的生成安装的方法,但是在VS2005下并没有直接生成卸载程序的功能,所以我们只好用msi来实现了, *** 作方法如下:

在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,这个文件在c:\windows\system32文件夹下,添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",当然这个关系不大,改不改都行。

然后创建一个快捷方式,放到"开始-程序"中,接下来我们要做的就是查找这个部署项目的ProductCode了,鼠标左键单击项目名称,记住是左键单击,然后点击属性标签,注意:不是右击的属性,这个区别很大,这时你就可以看到ProductCode了。

然后打开你创建的那个快捷方式的属性对话框,在Aguements属性中输入"/x {ProductCode}",好了,然后点击"生成解决方案"即可生成带有卸载功能的安装程序了。

1、如果是用VC++ 直接可以生成release exe的可执行文件。

2、以GCC编译器为例,可以分为四步。

第一步是预处理,包括语法检查等工作。

gcc -P abc.c

第二知步由源程序生产汇编语言代码。道

gcc -S abc.c

会生成abc.s文件,这个文件里就是汇编代码。

第三步编译器生成目标代码,一回个源文件生成一个目标代码。

gcc -c abc.c

会生成abc.o

第四步连接器从目标代码生成可执行文件。答

gcc abc.o

目标代码包括机器码和符号表(函数及变量名)。连接器的主要作用是通过符号表在库文件和其他模块中找到在目标代码中引入或未定义的符号(函数及变量名),将几个目标代码合成可执行文件。

大哥,你写的代码都没有调用gui的函数或者类,它哪会像360那样有界面呢?你现在用的输入和输出是c语言标准库的io库,它的默认是输出到控制台下的,也就是黑屏那个,要是想编写有界面的程序,就要用到gui库或者API,在windows底下就要用到windows.h这个头文件,然后调用相关的函数和类;如果你再牛逼点的话,直接调用api。不过,我看你还是乖乖地先把c语言学好吧~

如果你想到别的电脑上打开你的程序,直接编译之后,在你的项目文件夹里面会生成个.exe可执行文件,然后你把它拷贝到别的电脑run就行了,不过,你双击这个。exe程序的时候,因为你的程序的输出是在控制台下的,所以,运行的时候系统会调用控制台,也就是那个黑屏的东西。可能会一闪而过。

最好的方法是:win+r,然后输入cmd,出现个控制台之后,用鼠标把你的.exe文件拖到cmd里面,然后enter 它就run了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8061567.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存