




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Windows应用编程应用编程 主讲:陈克力主讲:陈克力第第 12 章章 应用程序的发布应用程序的发布 Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.1 关于应用程序的发布关于应用程序的发布12.2 由手工复制文件来发布程序由手工复制文件来发布程序12.3 使用使用.NET项目来发布程序项目来发布程序本本 章章 内内 容容Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.1 关于应用程序的发布应用程序的发布应用程序的发布也称为应用程序部署或打包,是指在也称为应用程序部署或打包,是指在Visual Studio.NET环境中将应用程序或组件脱离环境中将应用程序或组件脱
2、离Visual Studio.NET环境而使之能够独立运环境而使之能够独立运行的过程。行的过程。其基本原理其基本原理:将应用程序独立运行所需的文件及相关资源拷贝到目标目:将应用程序独立运行所需的文件及相关资源拷贝到目标目录(可以是任意一台机器的某一个目录)下,以使应用程序的录(可以是任意一台机器的某一个目录)下,以使应用程序的exe文件或文件或dll文件能够在新的环境下独立运行。文件能够在新的环境下独立运行。最简单的做法最简单的做法:用手工或半手工方法将相关文件及资源拷贝到目标目录:用手工或半手工方法将相关文件及资源拷贝到目标目录中。但这种方法只适用于功能简单、结构单一、发布量小的程序。中。但
3、这种方法只适用于功能简单、结构单一、发布量小的程序。Visual Studio.NET的程序部署的程序部署:利用微软的:利用微软的Windows Installer来实现的。来实现的。Windows Installer的功能十分强大,它提供按照需要安装应用程序的功能,的功能十分强大,它提供按照需要安装应用程序的功能,可以对组件等相关部件进行配置和注册,支持可以对组件等相关部件进行配置和注册,支持.NET Framework,也可以,也可以利用它安全地删除已部署的程序,即使是在安装失败后它也可以将系统利用它安全地删除已部署的程序,即使是在安装失败后它也可以将系统恢复到安装的初始状态,安全删除安装
4、时留下的有关文件,避免安装操恢复到安装的初始状态,安全删除安装时留下的有关文件,避免安装操作对系统的影响。作对系统的影响。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布【例【例12.1】 创建窗体应用程序创建窗体应用程序PictureBrowse,它用于浏览指定目录下的,它用于浏览指定目录下的所有图片文件,可以用鼠标滚动键实现对图片的缩放功能;然后通过文所有图片文件,可以用鼠标滚动键实现对图片的缩放功能;然后通过文件复制的方法来发布此程序。件复制的方法来发布此程序。步骤如下:步骤如下:(1)创建窗体应
5、用程序)创建窗体应用程序PictureBrowse,在窗体上添加三个,在窗体上添加三个Button控件、控件、五个五个RadioButton控件以及控件以及PictureBox、ListBox、GroupBox、FolderBrowserDialog控件各一个,适当调整它们的位置和大小,通过控件各一个,适当调整它们的位置和大小,通过PictureBox控件的控件的Image属性设置其显示的初始图片,并设置其他控件的属性设置其显示的初始图片,并设置其他控件的相关属性:相关属性:Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发
6、布窗体应用程序的发布(2)设计各事件的处理代码。其中一个关键部分是如何利用鼠标的滚动)设计各事件的处理代码。其中一个关键部分是如何利用鼠标的滚动键来实现对图片的缩放操作,因为键来实现对图片的缩放操作,因为C#没有提供鼠标的没有提供鼠标的MouseWheel事件。事件。因此,需要我们手工添加该事件,代码如下:因此,需要我们手工添加该事件,代码如下:public Form1() InitializeComponent();this.pictureBox1.MouseWheel += new System.Windows.Forms.MouseEventHandler(pictureBox1_Mou
7、seWheel); private void pictureBox1_MouseWheel(object sender, MouseEventArgs e) /滚动键滚动时所进行操作的实现代码滚动键滚动时所进行操作的实现代码当鼠标向上滚动时,参数当鼠标向上滚动时,参数e.Delta=120,向下滚动时,向下滚动时e.Delta=-120。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布据此,我们就可以编写各事件的处理代码,关键代码如下:据此,我们就可以编写各事件的处理代码,关键代码如下: private
8、 int stretchUp = 0; private int stretchDown = 10; private string path = ; private string picpath = ; public Form1() InitializeComponent(); this.pictureBox1.MouseWheel += new System.Windows.Forms.MouseEventHandler(pictureBox1_MouseWheel); Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗
9、体应用程序的发布private void pictureBox1_MouseWheel(object sender, MouseEventArgs e) if (pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize) MessageBox.Show(在在AutoSize模式(按图片实际尺寸显示)下,模式(按图片实际尺寸显示)下,+ 不能通过滚动鼠标来缩放图片!不能通过滚动鼠标来缩放图片!); return; if (e.Delta = 120) /上滚时上滚时 if (stretchUp 0) stretchDown-; pictureBox1.
10、Width = (int)(pictureBox1.Width * (stretchDown / 10.0); pictureBox1.Height = (int)(pictureBox1.Height * (stretchDown / 10.0); stretchUp = 0; Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布 private void button1_Click(object sender, EventArgs e) /选择目录选择目录 folderBrowserDialog1.Sh
11、owNewFolderButton = false; folderBrowserDialog1.RootFolder = Environment.SpecialFolder.MyPictures; folderBrowserDialog1.RootFolder = Environment.SpecialFolder.Desktop; folderBrowserDialog1.SelectedPath = Application.StartupPath; if (folderBrowserDialog1.ShowDialog() = DialogResult.OK) path = folderB
12、rowserDialog1.SelectedPath; string Files = Directory.GetFiles(path, *.jpg); listBox1.Items.Clear(); for (int i = 0; i Files.Length; i+) string filename = Filesi.Substring(Filesi.LastIndexOf() + 1); listBox1.Items.Add(filename); Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布 p
13、rivate void pictureBox1_MouseEnter(object sender, EventArgs e) pictureBox1.Focus(); /使使pictureBox1获得焦点获得焦点 private void Form1_Load(object sender, EventArgs e) radioButton1.Checked = true; pictureBox1.SizeMode = PictureBoxSizeMode.Normal; private void radioButton1_CheckedChanged(object sender, EventA
14、rgs e) pictureBox1.SizeMode = PictureBoxSizeMode.Normal; private void radioButton2_CheckedChanged(object sender, EventArgs e) pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布 private void radioButton3_CheckedChanged(object
15、 sender, EventArgs e) pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; private void radioButton4_CheckedChanged(object sender, EventArgs e) pictureBox1.SizeMode = PictureBoxSizeMode.CenterImage; private void radioButton5_CheckedChanged(object sender, EventArgs e) pictureBox1.SizeMode = PictureBox
16、SizeMode.Zoom; Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布 private void button2_Click(object sender, EventArgs e) int index = listBox1.SelectedIndex; index+; if (index = 0) listBox1.SelectedIndex = index; picpath = path + listBox1.Itemsindex.ToString(); Windows应用编程应用编程 主讲:
17、陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布 private void listBox1_SelectedValueChanged(object sender, EventArgs e) if (picpath = ) return; pictureBox1.Load(picpath); private void listBox1_Click(object sender, EventArgs e) picpath = path + + listBox1.SelectedItem.ToString(); listBox1_Selected
18、ValueChanged(null, null); Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布 private void listBox1_SelectedValueChanged(object sender, EventArgs e) if (picpath = ) return; pictureBox1.Load(picpath); private void listBox1_Click(object sender, EventArgs e) picpath = path + + listBo
19、x1.SelectedItem.ToString(); listBox1_SelectedValueChanged(null, null); 需要注意的是,对用于发布的程序(要安装到其他机器上的程需要注意的是,对用于发布的程序(要安装到其他机器上的程序),在代码终尽量不要使用相关资源(如图片文件)的绝对地址,序),在代码终尽量不要使用相关资源(如图片文件)的绝对地址,否则可能导致安装后不能正确运行。否则可能导致安装后不能正确运行。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布(3)执行该程序,通过【选
20、择目录】按钮可以将指定目录下的所有)执行该程序,通过【选择目录】按钮可以将指定目录下的所有jpg文文件名显示在件名显示在ListBox控件中,然后选择一个文件名就可以显示相应的图片控件中,然后选择一个文件名就可以显示相应的图片 :Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.1 窗体应用程序的发布窗体应用程序的发布(4)通过文件复制操作发布程序)通过文件复制操作发布程序PictureBrowse。执行程序。执行程序PictureBrowse(实际上不需执行,只需按(实际上不需执行,只需按F6键生成该程序即可)后,会键生成该程序即可)后,会在
21、程序在程序PictureBrowse根目录的根目录的PictureBrowsebinDebug子目录(本例为子目录(本例为D:VS2008第第12章章PictureBrowsePictureBrowsebinDebug)下形成可执)下形成可执行文件行文件PictureBrowse.exe。对该程序来说,文件对该程序来说,文件PictureBrowse.exe与放在此目录下的与放在此目录下的pic目录(含其目录(含其中的图片文件)就是执行程序中的图片文件)就是执行程序PictureBrowse所需要的文件,其他文件都所需要的文件,其他文件都不在需要。因此,不在需要。因此,只需将文件只需将文件Pi
22、ctureBrowse.exe和目录和目录pic拷贝同一个目拷贝同一个目标目录下即可标目录下即可,目标目录可以是任意一台计算机上的目录,当然该计算,目标目录可以是任意一台计算机上的目录,当然该计算机要安装机要安装.NET Framework。要运行程序。要运行程序PictureBrowse,只要执行文件,只要执行文件PictureBrowse.exe即可。即可。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.2 使用使用WinRAR发布程序发布程序使用使用WinRAR可以将要发布的文件打包成一个可以将要发布的文件打包成一个exe文件,运行该文
23、件,运行该exe文件时文件时可以将其包含的文件部署到指定的位置上,从而实现程序的发布。可以将其包含的文件部署到指定的位置上,从而实现程序的发布。例如,对于上面的程序例如,对于上面的程序PictureBrowse来说,选择文件来说,选择文件PictureBrowse.exe和目录和目录pic,然后右击它们,在弹出的菜单中选择,然后右击它们,在弹出的菜单中选择“添加到压缩文件添加到压缩文件(A)”命令命令 :Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.2 使用使用WinRAR发布程序发布程序在打开的在打开的“压缩文件名和参数压缩文件名和参数”
24、对话框中做如下设置:对话框中做如下设置:u在在 “常规常规”选项卡上选中选项卡上选中“创建自解压格式压缩文件创建自解压格式压缩文件”,同时在,同时在“压压缩文件名缩文件名”文本框中设置形成的文本框中设置形成的exe文件名:文件名:Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.2 使用使用WinRAR发布程序发布程序u在在 “高级高级”选项卡上单击【自解压选项选项卡上单击【自解压选项】按钮,打开】按钮,打开“高级自解压高级自解压选项选项”对话框,在该对话框的对话框,在该对话框的“常规常规”选项卡上设置解压路径(本例设选项卡上设置解压路径(本例
25、设为为C:myPB,如图,如图12.5所示),该路径为文件自解压时文件自动存放的路所示),该路径为文件自解压时文件自动存放的路径;在径;在“高级高级”选项卡上单击【添加快捷方式】按钮,打开选项卡上单击【添加快捷方式】按钮,打开“添加快捷添加快捷方式方式”对话框,设置应用程序的快捷方式:对话框,设置应用程序的快捷方式:Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.2 使用使用WinRAR发布程序发布程序在设置完毕并单击【确定】按钮后,将在当前目录下形成相应的在设置完毕并单击【确定】按钮后,将在当前目录下形成相应的exe文件文件(本例形成(本例
26、形成PB.exe文件)。可以将此文件)。可以将此exe文件拷贝到任意的一台计算机上,文件拷贝到任意的一台计算机上,在执行此文件后会自动将其包含的文件在执行此文件后会自动将其包含的文件“安装安装”到指定的目录下。到指定的目录下。 安装后,要运行程序安装后,要运行程序PictureBrowse,只需运行,只需运行C:myPB目录下目录下的文件的文件PictureBrowse.exe即可,也可以运行桌面上形成的快捷方式即可,也可以运行桌面上形成的快捷方式“PictureBrowse.exe”。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.3 II
27、S安装与安装与Web应用程序发布应用程序发布1. 安装安装IISWeb应用程序都要使用应用程序都要使用Web服务器,服务器,IIS(Internet Information Server)就是就是微软开发的一种微软开发的一种Web服务器。如果服务器。如果Windows操作系统上没有安装操作系统上没有安装IIS(默(默认是不安装的),就必须先安装它并创建相应的虚拟目录。认是不安装的),就必须先安装它并创建相应的虚拟目录。IIS的安装的安装(1)选择)选择Windows系统菜单系统菜单“开始开始”|“控制面板控制面板”|“添加或删除程序添加或删除程序”,打开打开 “添加或删除程序添加或删除程序”对
28、话框,然后在此对话框中单击对话框,然后在此对话框中单击“添加添加/删除删除Windows组件组件”,打开,打开“Widows组件向导组件向导”对话框对话框:Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.3 IIS安装与安装与Web应用程序发布应用程序发布(2)在)在“Widows组件向导组件向导”对话框中,选中对话框中,选中“Internet信息服务信息服务(IIS)”左左边的复选框(如果该复选框已被选中,则表示边的复选框(如果该复选框已被选中,则表示IIS已经安装),然后单击已经安装),然后单击【下一步】按钮,向导程序即可自动进入【下一步
29、】按钮,向导程序即可自动进入IIS安装过程。在此过程中应按安装过程。在此过程中应按相应的提示进行操作,如插入相应的提示进行操作,如插入Windows安装盘等,最后单击【完成】按安装盘等,最后单击【完成】按钮即可完成对钮即可完成对IIS的安装。的安装。创建虚拟目录创建虚拟目录(1)在)在Windows操作系统中创建目录操作系统中创建目录C:myWeb,表示准备在,表示准备在IIS中发布中发布此目录。此目录。(2)选择)选择Windows系统菜单系统菜单“开始开始”|“管理工具管理工具”|“Internet 信息服务信息服务”,打开打开“Internet 信息服务信息服务”对话框。对话框。Wind
30、ows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.3 IIS安装与安装与Web应用程序发布应用程序发布(3)在)在“Internet 信息服务信息服务”对话框中,右击左边的对话框中,右击左边的“默认网站默认网站”结点,结点,并在弹出的菜单中选择并在弹出的菜单中选择“新建新建”|“虚拟目录虚拟目录”,打开,打开“虚拟目录创建向导虚拟目录创建向导”对话框的欢迎界面。然后,单击【下一步】按钮,进入对话框的欢迎界面。然后,单击【下一步】按钮,进入“虚拟目录别名虚拟目录别名”界面,在此将虚拟目录别名设置为界面,在此将虚拟目录别名设置为myVirDir。(4)单击
31、【下一步】按钮,进入)单击【下一步】按钮,进入“网站内容目录网站内容目录”界面。在界面。在“目录目录”文文本框中直接键入或通过【浏览】按钮输入本框中直接键入或通过【浏览】按钮输入“C:myWeb”,表示将把此目,表示将把此目录设置为网站的虚拟工作目录。录设置为网站的虚拟工作目录。(5)单击【下一步】按钮,进入)单击【下一步】按钮,进入“访问权限访问权限”界面。在此界面中,根据界面。在此界面中,根据需要对网站的访问权限进行设置。然后单击【下一步】按钮,进入需要对网站的访问权限进行设置。然后单击【下一步】按钮,进入“已已成功完成虚拟目录创建向导成功完成虚拟目录创建向导”界面。在此界面中,单击【完成
32、】按钮,界面。在此界面中,单击【完成】按钮,这样名为这样名为myVirDir、实际工作目录为、实际工作目录为C:myWeb的虚拟目录就创建完毕。的虚拟目录就创建完毕。myVirDir C:myWeb虚拟目录虚拟目录 工作目录工作目录Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.3 IIS安装与安装与Web应用程序发布应用程序发布2. 发布发布ASP.NET应用程序应用程序 发布发布ASP.NET应用程序主要经过以下三步:应用程序主要经过以下三步:(1)安装)安装ASP.NET。方法是:启动命令提示符,进入到。方法是:启动命令提示符,进入到a
33、spnet_regiis.exe文件所在的目录,然后在命令提示符下键入并执行下列命令(如图文件所在的目录,然后在命令提示符下键入并执行下列命令(如图12.10所示):所示):aspnet_regiis.exe -iWindows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.3 IIS安装与安装与Web应用程序发布应用程序发布(3)复制文件。即将带发布程序所涉及的)复制文件。即将带发布程序所涉及的aspx文件及相关资源文件(主文件及相关资源文件(主要是要是.aspx文件、文件、.config和和bin目录以及用到的图片文件等)全部复制到指目录以及用到的图片
34、文件等)全部复制到指定的虚拟目录的工作目录下。定的虚拟目录的工作目录下。例如,将程序例如,将程序SQLSIDU中的文件中的文件Web.config、Default.aspx和目录和目录bin拷贝拷贝到到C:myWeb目录下,该目录的虚拟目录是目录下,该目录的虚拟目录是myVirDir,然后在,然后在IE浏览器地浏览器地址栏中输入下列地址即可访问址栏中输入下列地址即可访问Default.aspx页:页:http:/mzq/myVirDir/Default.aspx结果如图所示。该结果如图所示。该URL也可以写为:也可以写为:/myVirDir/Default.asp
35、x如果如果mzq的的IP为为,则上面的,则上面的URL又可以写成:又可以写成:/myVirDir/Default.aspx该程序涉及到数据库访问,因而其发布过程容易出错。凭经验,应从该程序涉及到数据库访问,因而其发布过程容易出错。凭经验,应从以下几方面去检查:(以下几方面去检查:(1)确保已经安装)确保已经安装.NET framework和和IIS;(;(2)确)确保了安装保了安装ASP.NET,即执行,即执行aspnet_regiis.exe命令;(命令;(3)确保已安装数据)确保已安装数据库、创建相应的数据表,正确设置数据库连接字符串
36、。库、创建相应的数据表,正确设置数据库连接字符串。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.3 IIS安装与安装与Web应用程序发布应用程序发布3. 发布发布Web服务服务 Web服务的发布与服务的发布与ASP.NET窗体应用程序的发布类似,在生成窗体应用程序的发布类似,在生成Web服务服务以后,程序中的以后,程序中的.asmx文件、文件、Web.config文件和文件和bin目录等相关资源文件拷目录等相关资源文件拷贝到虚拟目录对应的工作目录下即可。贝到虚拟目录对应的工作目录下即可。例如,以第例如,以第11章中由程序章中由程序MyFir
37、stWebService创建的创建的Web服务服务Service1为为例,将该程序中的文件例,将该程序中的文件Service1.asmx、Web.config和目录和目录bin拷贝到虚拟拷贝到虚拟目录目录myVirDir对应的对应的C:myWeb目录下面,然后在目录下面,然后在IE地址栏输入下列地址栏输入下列URL:http:/mzq/myVirDir/Service1.asmxWindows应用编程应用编程 主讲:陈克力主讲:陈克力12.2 由手工复制文件来发布程序12.2.3 IIS安装与安装与Web应用程序发布应用程序发布此 后 在 调 用 该此 后 在 调 用 该 W e b 服 务
38、的 应 用 程 序 中 通 过服 务 的 应 用 程 序 中 通 过“http:/mzq/myVirDir/Service1.asmx”就可以引用此就可以引用此Web服务:服务:Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序通过基于通过基于Windows Installer的的.NET项目来创建应用程序的安装程序,可项目来创建应用程序的安装程序,可以最大限度地减少手工的参与,提高安装程序的正确性、兼容性和高效以最大限度地减少手工的参与,提高安装程序的正确性、兼容性和高效性。性。对于安装程序,需要说明的是:对于安装程序,需要说明的是:(1)在应用程序
39、中尽量使用资源的相对路径,而不使用绝对路径;()在应用程序中尽量使用资源的相对路径,而不使用绝对路径;(2)对于数据库应用程序,尽量保留设置数据库连接字符串的接口,而不应对于数据库应用程序,尽量保留设置数据库连接字符串的接口,而不应将连接字符串固定地嵌入到程序代码中。将连接字符串固定地嵌入到程序代码中。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序 【例【例12.2】 制作一个数据库应用程序的安装程序。制作一个数据库应用程序的安装程序。程序程序DBAppSet的功能是根据指定的服务器
40、、数据库、用户名、密码来显的功能是根据指定的服务器、数据库、用户名、密码来显示指定数据表中的数据。该程序的设计界面如下:示指定数据表中的数据。该程序的设计界面如下:(代码略)(代码略)Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序下面介绍如何利用下面介绍如何利用.NET项目制作程序项目制作程序DBAppSet的安装程序的安装程序:(1)在)在VS2008中打开程序中打开程序DBAppSet,选择菜单,选择菜单“文件文件”|“添加添加”|“新建新建项目项目”命令,出现命令,出现“添加新
41、建项目添加新建项目”对话框。在此对话框中选择项目类型对话框。在此对话框中选择项目类型为为“安装和部署安装和部署”、模板为、模板为“安装向导安装向导”,设置项目名称为,设置项目名称为SetupforDBAppSet: Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序 (2)单击【确定】按钮后将出现安装向导过程的第)单击【确定】按钮后将出现安装向导过程的第1步步欢迎界面,单欢迎界面,单击【下一步】按钮即可,然后出现用于选择项目类型的向导界面,本例选击【下一步】按钮即可,然后出现用于选择项目
42、类型的向导界面,本例选择择“为为Windows应用程序创建一个安装程序应用程序创建一个安装程序” :Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序 (3)单击【下一步】按钮后,出现安装向导第)单击【下一步】按钮后,出现安装向导第3步的界面,用于设置安装步的界面,用于设置安装程序要包含的应用程序的有关文件。可以全选,但对窗体应用程序来说,程序要包含的应用程序的有关文件。可以全选,但对窗体应用程序来说,不应该安装它的源代码,故一般不选择不应该安装它的源代码,故一般不选择“源文件来自源文件
43、来自DBAppSet”项项 :Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序 (4)单击【下一步】按钮后,出现安装向导第)单击【下一步】按钮后,出现安装向导第4步的界面,在该界面中选步的界面,在该界面中选择应用程序在运行时用到的资源,如图片文件(本例没有)。择应用程序在运行时用到的资源,如图片文件(本例没有)。 Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序 (5)单击【下
44、一步】按钮后,出现安装向导第)单击【下一步】按钮后,出现安装向导第5步的界面,该界面显示前步的界面,该界面显示前面设置结果的信息摘要,单击【完成】按钮即可。面设置结果的信息摘要,单击【完成】按钮即可。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序(6)单击【完成】按钮后,将出现)单击【完成】按钮后,将出现“文件系统文件系统”视图界面,如图所示。在视图界面,如图所示。在该界面中,先选择左边方框中该界面中,先选择左边方框中“应用程序文件夹应用程序文件夹”项,然后右击中间方框项,然后右击中
45、间方框中的中的“主输出来自主输出来自DBAppSet”项,在弹出的菜单中选择项,在弹出的菜单中选择“创建创建 主输出来自主输出来自DBAppSet (活动活动) 的快捷方式的快捷方式(C)”命令,这时形成一个快捷方式,将之改名命令,这时形成一个快捷方式,将之改名为为“启动启动DBAppSet程序程序”后拖到左边方框中的后拖到左边方框中的“用户的用户的程序程序菜单菜单”项项上,安装后快捷方式上,安装后快捷方式“启动启动DBAppSet程序程序”将出现在将出现在Windows系统的用户系统的用户的的“程序程序”菜单;用同样方法创建快捷方式菜单;用同样方法创建快捷方式“启动启动DBAppSet程序程
46、序”,并将,并将之拖到之拖到“用户桌面用户桌面”项上,以创建桌面上的快捷方式。项上,以创建桌面上的快捷方式。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序(7)右击解决方案资源管理器中的)右击解决方案资源管理器中的“SetupforDBAppSet”节点,在弹出的节点,在弹出的菜单中选择菜单中选择“生成生成”命令,这时在安装程序命令,这时在安装程序SetupforDBAppSet的子目录的子目录Debug下会生成两个文件:下会生成两个文件:setup.exe和和SetupforDBA
47、ppSet.msi :Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.1 制作窗体应用程序的安装程序制作窗体应用程序的安装程序(8)应用程序的安装与删除)应用程序的安装与删除可以将文件可以将文件setup.exe和和SetupforDBAppSet.msi拷贝到任何一台机器的同一拷贝到任何一台机器的同一个目录下,然后运行文件个目录下,然后运行文件setup.exe后即可安装程序后即可安装程序DBAppSet,并在,并在Windows系统的用户系统的用户“程序程序”菜单和桌面上分别创建该程序快捷方式。如菜单和桌面上分别创建该程序快捷方式。如果
48、再次运行文件果再次运行文件setup.exe,则可删除已安装的,则可删除已安装的DBAppSet程序,包括其快捷程序,包括其快捷方式。如果所使用的机器没有安装方式。如果所使用的机器没有安装.NET framework,安装程序会自动先下,安装程序会自动先下载载.NET framework来安装。来安装。此外,还可在此外,还可在“添加或删除程序添加或删除程序”窗口中删除由文件窗口中删除由文件setup.exe安装的安装的DBAppSet程序,如图所示。程序,如图所示。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应
49、用程序的安装程序应用程序的安装程序下面介绍为下面介绍为ASP.NET应用程序制作安装程序的两种方式,其中所使用的应用程序制作安装程序的两种方式,其中所使用的ASP.NET应用程序是在第应用程序是在第11章章11.3.1节中创建的程序节中创建的程序testWebControlApp。1. 使用安装向导使用安装向导(1)首先在)首先在VS2008中打开程序中打开程序testWebControlApp(见第(见第11章中例章中例11.2),),然后按照上一节介绍的方法在解决方案资源管理器中添加一个安装向导的然后按照上一节介绍的方法在解决方案资源管理器中添加一个安装向导的项目,项目名设置为项目,项目名
50、设置为SetupfortestWebControlApp。在添加的过程中,由于是制作在添加的过程中,由于是制作Web应用程序的安装程序,因应用程序的安装程序,因此与上面介绍的方法略有不同,此与上面介绍的方法略有不同,主要体现在两个地方:主要体现在两个地方:(a)安装向导过程中的第安装向导过程中的第2步,步,对对ASP.NET应用程序来说,这应用程序来说,这一步应该选择一步应该选择“为为Web应用程应用程序创建一个安装程序序创建一个安装程序(W)”项,项,如图:如图:Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应
51、用程序的安装程序应用程序的安装程序(b)在安装向导过程中的第)在安装向导过程中的第3步中,最好选择除了步中,最好选择除了“源文件源文件 来自来自”项以项以外的其他所有项,至少仅选择外的其他所有项,至少仅选择“主输出主输出 来自来自”项是不够的,如图:项是不够的,如图:Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应用程序的安装程序应用程序的安装程序(2)在经过向导过程中的五个步骤后,就进入如下图所示的)在经过向导过程中的五个步骤后,就进入如下图所示的“文件系统文件系统”视图界面。视图界面。Windows应用编程应
52、用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应用程序的安装程序应用程序的安装程序其中,有两个属性对安装程序有显著的影响:其中,有两个属性对安装程序有显著的影响:u安装项目的安装项目的ProductName属性属性:在解决方案资源管理器中选择:在解决方案资源管理器中选择“SetupfortestWebControlApp”节点,然后在属性编辑框中,将节点,然后在属性编辑框中,将ProductName属性的值设置为属性的值设置为“我的我的ASP.NET程序程序”,以后在执行安装程,以后在执行安装程序时界面就会显示序时界面就会显示“我的我的
53、ASP.NET程序程序”,以作为安装时相应应用程序的,以作为安装时相应应用程序的名称。名称。u“Web应用程序文件夹应用程序文件夹”项的项的VirtualDirectory属性属性:选中左边方框中的:选中左边方框中的“Web应用程序文件夹应用程序文件夹”项后,其相关属性显示在属性编辑框,然后将项后,其相关属性显示在属性编辑框,然后将VirtualDirectory属性的值改为属性的值改为“myaspnet”,表示被安装的应用程序的虚,表示被安装的应用程序的虚拟目录为拟目录为myaspnet,安装后应用程序的所有资源文件都被拷贝到虚拟目录,安装后应用程序的所有资源文件都被拷贝到虚拟目录myasp
54、net对应的工作目录下。如果在对应的工作目录下。如果在IIS服务器上不存在名为服务器上不存在名为“myaspnet”的虚拟目录,则创建该虚拟目录,并自动创建其工作目录的虚拟目录,则创建该虚拟目录,并自动创建其工作目录C:Inetpubwwwrootmyaspnet;如果已存在同名的虚拟目录,则不再重新;如果已存在同名的虚拟目录,则不再重新创建,而使用该同名目录。创建,而使用该同名目录。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应用程序的安装程序应用程序的安装程序(3)在解决方案资源管理器右击)在解决方案资源管
55、理器右击“SetupfortestWebControlApp”节点,在节点,在弹出的菜单中选择弹出的菜单中选择“生成生成”命令,接着会生成两个文件:命令,接着会生成两个文件:setup.exe和和SetupfortestWebControlApp.msi。这两个文件就是。这两个文件就是ASP.NET应用程序应用程序testWebControlApp的安装文件。的安装文件。(4)安装与删除)安装与删除将文件将文件setup.exe和和SetupfortestWebControlApp.msi拷贝到待安装程序拷贝到待安装程序testWebControlApp的计算机上(放在同一个目录下,并假设该机
56、器的的计算机上(放在同一个目录下,并假设该机器的IP为为),然后运行),然后运行setup.exe文件即可安装程序文件即可安装程序testWebControlApp,下图是安装过程的一个界面。下图是安装过程的一个界面。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应用程序的安装程序应用程序的安装程序安装完了以后,在安装完了以后,在“Internet信息服务信息服务”窗口中会看到形成的虚拟目录窗口中会看到形成的虚拟目录myaspnet,以及该虚拟目录所包含的文件及其他资源文件,以及该虚拟目录所
57、包含的文件及其他资源文件 :Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应用程序的安装程序应用程序的安装程序该虚拟目录对应的工作目录是该虚拟目录对应的工作目录是C:Inetpubwwwrootmyaspnet目录,也就是目录,也就是说,安装程序将程序说,安装程序将程序testWebControlApp的相关文件被拷贝到的相关文件被拷贝到C:Inetpubwwwrootmyaspnet目录中。在目录中。在IE浏览器地址栏中输入下列的浏览器地址栏中输入下列的URL地址即可访问该地址即可访问该ASP.NET程序(如下
58、图所示):程序(如下图所示):/myaspnet/Default.aspx如果要删除已安装的如果要删除已安装的ASP.NET应用应用程序,可以通过两种方法来实现:一程序,可以通过两种方法来实现:一种是再次运行种是再次运行setup.exe,在出现的界,在出现的界面中选择删除功能即可;另一种是利面中选择删除功能即可;另一种是利用用Windows系统控制面板中的系统控制面板中的“添加添加或删除程序或删除程序”的功能来实现。的功能来实现。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应
59、用程序的安装程序应用程序的安装程序2. 使用使用Web安装项目安装项目u介绍如何使用介绍如何使用Web安装项目来为安装项目来为ASP.NET应用程序制作安装程序应用程序制作安装程序u介绍如何让安装程序能够自动地将与应用程序有关其他资源文件介绍如何让安装程序能够自动地将与应用程序有关其他资源文件(非(非.apsx文件)也自动地拷贝过去(这种方法对制作窗体应用程序的安装文件)也自动地拷贝过去(这种方法对制作窗体应用程序的安装程序同样适用)。程序同样适用)。例如,一个例如,一个ASP.NET应用程序通常要动态地用到大量的图片文件,这些图应用程序通常要动态地用到大量的图片文件,这些图片文件如果只是简单
60、地放在程序的文件夹中,安装程序是不能将它们自动片文件如果只是简单地放在程序的文件夹中,安装程序是不能将它们自动地拷贝到目标目录下的,从而导致安装后的应用程序不能正常运行。地拷贝到目标目录下的,从而导致安装后的应用程序不能正常运行。Windows应用编程应用编程 主讲:陈克力主讲:陈克力12.3 使用.NET项目来发布程序12.3.2 制作制作ASP.NET应用程序的安装程序应用程序的安装程序【例【例12.3】 创建创建ASP.NET应用程序应用程序PictureBrowse2,它用于浏览指定目录,它用于浏览指定目录下的所有图片文件;然后为该程序制作安装程序。下的所有图片文件;然后为该程序制作安
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 传统工艺振兴策略-洞察及研究
- 辽宁省阜新市细河区2024-2025学年高二 下学期6月月考物理试卷(含答案)
- 产后抑郁症的自我识别
- 社会心理变迁研究-洞察及研究
- 黄土高原地貌特征-洞察及研究
- 【课件】化学实验与科学探究(第1课时)-2024-2025学年九年级化学人教版(2024)上册
- 环保主题演讲演讲稿题材作文4篇
- 【课件】力及其描述+物理沪科版八年级全一册
- 古诗文的语言艺术:语文经典篇目教学教案
- 旅游目的地管理案例分析
- 八年级下剑桥第2课课件
- 设备供应商评估报告
- 信息安全管理体系认证方案-北京中大华远认证中心
- GB∕T 15468-2020 水轮机基本技术条件
- 学习单元3.2钢结构工程清单计价.课件
- “克勤克俭、厉行节约”PPT课件:如何过“紧日子”
- 粉末材料合成及加工新技术
- 4S店新员工入职及成长培训ppt课件
- 内审内审员培训试题对内审员的考试版
- 第10章 氡测量和其他辐射测量方法
- 思想品德鉴定表(范例)
评论
0/150
提交评论