问题描述
大侠们:小弟现在想在VS2008上创建一个安装程序,但是这个安装程序得判断是否安装了a.exe文件,如果没有责先进行a.exe文件的安装,安装完成之后紧接着安装本项目的程序。请问该如何实现呢?
解决方案
解决方案二:
1新建安装部署项目打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定。2安装向导关闭后打开安装向导,点击下一步,或者直接点击完成。3开始制作安装向导完成后即可进入项目文件夹:双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来。然后右击你的文件,创建快捷方式,然后把快捷方式分别复制或剪切到左边的"用户的'程序'菜单"和"用户桌面"中。这样安装程序安装完成后会在"开始->所有程序"和"桌面"上生成程序的快捷方式。也可以直接在"用户的'程序'菜单"和"用户桌面"相应目录下新建快捷方式,然后定位到你的文件。然后右击左边的"应用程序文件夹"打开属性对话框:将属性中的"DefaultLocation"的路径中的"[Manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是"C:ProgramFiles你的用户名安装解决方案名称";然后打开解决方案管理器,右击你的解决方案名称,选择属性:打开的属性页中,选择"系统必备",在打开的系统必备页中,在"指定系统必备安装组件的位置"中选中如下选择项:从与我的应用程序相同的位置下载系统必备组件。选上以后,在生成的安装文件包中包含.NetFramework组件。好了,这样就完成99%了,然后点击"生成->生成解决方案",哈,生成成功!4制作完成现在打开解决方案文件夹下的Debug文件夹,就可以看到生成的安装文件了。5关于"卸载"功能的添加上面只介绍了简单的生成安装的方法,但是在VS2005下并没有直接生成卸载程序的功能,所以我们只好用msi来实现了,操作方法如下:在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,这个文件在c:windowssystem32文件夹下,添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",当然这个关系不大,改不改都行。然后创建一个快捷方式,放到"开始-程序"中,接下来我们要做的就是查找这个部署项目的ProductCode了,鼠标左键单击项目名称,记住是左键单击,然后点击属性标签,注意:不是右击的属性,这个区别很大,这时你就可以看到ProductCode了。然后打开你创建的那个快捷方式的属性对话框,在Aguements属性中输入"/x{ProductCode}",好了,然后点击"生成解决方案"即可生成带有卸载功能的安装程序了。----------------------------------------------------------------------------------------------------------------------------------------------------------------创建windows应用程序在“文件”菜单上指向“新建”,然后选择“项目”。在“新建项目”对话框中,选择“项目类型”窗格中的“visualbasic项目”,然后选择“模板”窗格中的“windows应用程序”。在“名称”框中,键入“我的记事本”。此项目被添加到解决方案资源管理器中,并且窗体设计器打开。在“工具箱”中选择“windows窗体”选项卡,并将“按钮”(button)控件拖到疤逯小?双击button控件为该按钮添加事件处理程序。在事件处理程序中添加下面的代码:shell("notepad.exe",appwinstyle.normalfocus)这将启动notepad.exe并将焦点对准它。在“生成”菜单上,选择“生成我的记事本”该应用程序。创建部署项目在“文件”菜单上指向“添加项目”,然后选择“新建项目”。在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。在“名称”框中,键入“我的记事本安装程序”。项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“属性”窗口中,选择productname属性,并键入“我的记事本”。注意productname属性确定应用程序显示在文件夹名称以及“添加/删除程序”对话框中的名称。将windows应用程序添加到安装程序中在解决方案资源管理器中选择“我的记事本安装程序”项目。在“文件系统编辑器”中,选择“应用程序文件夹”节点。在“操作”菜单上,选择“添加”->“项目输出”。在“添加项目输出组”对话框中,从“项目”下拉列表中选择“我的记事本”。从列表中选择“主输出”组,并单击“确定”。在“生成”菜单上选择“生成我的记事本安装程序”。部署应用程序(基本安装程序)如果正在执行一个完整的演练过程,可以跳过此步骤。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“项目”菜单上选择“安装”。这将运行该安装程序并在开发计算机上安装“我的记事本”。其余步骤演示可选的部署功能。为windows应用程序创建快捷方式此步骤将为您的应用程序创建一个快捷方式,安装过程中,会将该快捷方式放置到目标计算机的桌面上。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“文件系统编辑器”中,选择“来自‘我的记事本’的主输出”节点。在“操作”菜单上,选择“创建主输出来自我的记事本(活动)的快捷方式”。这将添加一个“主输出来自我的记事本(活动)的快捷方式”节点。重命名“主输出来自我的记事本(活动)的快捷方式”快捷方式。选择“主输出来自我的记事本(活动)的快捷方式”,并将其拖到左窗格的“用户桌面”文件夹中。为windows应用程序创建文件关联此步骤为“我的记事本”添加文件关联,以便双击.vbn文件时启动“我的记事本”应用程序。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“视图”菜单上指向“编辑器”,然后选择“文件类型”。在“文件类型编辑器”中选择“目标计算机上的文件类型”节点。在“操作”菜单上,选择“添加文件类型”。将添加一个“新文档类型#1”节点,而且该节点将打开,以便您重命名。将“新文档类型#1”重命名为vbn.doc。在“属性”窗口中,将文件类型的extension属性设置为vbn。选择command属性并单击“省略号”()按钮。在“选择项目中的项”对话框中,定位到“应用程序文件夹”,并选择“来自‘我的记事本’的主输出”。为windows应用程序添加注册表项此步骤将一个注册表项以及相应的值添加到注册表中。运行时,可以从应用程序代码中引用此注册表项以检索每用户信息。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“视图”菜单上,指向“编辑器”,并选择“注册表”。选择“hkey_current_user”节点并将其展开,然后展开“software”节点,并选择“[manufacturer]”节点。注意“manufacturer”节点两边带有括号,这表示它是一个属性。它将被输入的部署项目的manufacturer属性值所替代。在“操作”菜单上,选择“新建”->“键”。重命名userchoice键。在“操作”菜单上,选择“新建”,再选择“字串值”。重命名textcolor值。在“属性”窗口中,选择value属性,并输入black。添加自定义安装对话框此步骤添加并配置一个在安装期间显示的自定义用户界面对话框。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“视图”菜单上指向“编辑器”,然后选择“用户界面”。在用户界面编辑器中,选择“安装”节点下的“启动”节点。在“操作”菜单上,选择“添加对话框”。在“添加对话框”对话框中,选择“复选框(a)”。在“操作”菜单上,选择“上移”两次,将“复选框(a)”对话框放置在“选择安装文件夹”对话框之上。在“属性”窗口中,将bannertext属性设置为“示例”。将bodytext属性设置为“‘安装示例文件’复选框控制是否安装示例文件。如果处于未选中状态,则不安装示例。”将checkbox1label属性设置为“要安装示例吗?”。将checkbox2visible、checkbox3visible和checkbox4visible属性设置为false。这将隐藏其他复选框。添加samples文件夹此步骤创建一个samples子文件夹,它将被安装到application文件夹的下面。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“视图”菜单上指向“编辑器”,然后选择“文件系统”。“应用程序文件夹”仍应被选中。从“操作”菜单上指向“添加”,然后选择“文件夹”。将“新建文件夹#1”重命名为“示例”。为应用程序创建示例文件此步骤创建两个简单的文本文件,如果用户在自定义对话框中选择“安装示例”选项,将安装这两个文本文件。使用记事本或其他文本编辑器创建一个包含文本“这是rules.vbn”的文本文件,然后将其保存为rules.vbn。注意若要防止记事本自动添加.txt扩展名,请从“文件类型”下拉列表中选择“所有文件”。创建另一个包含文本“这是memo.vbn”的文本文件,将其保存为memo.vbn。将示例添加到安装程序中此步骤将示例文件添加到samples文件夹中,并设置决定是否安装该文件的条件。在解决方案资源管理器中选择“我的记事本安装程序”项目。从“视图”菜单中指向“编辑器”,选择“文件系统”,然后选择“示例”文件夹。从“操作”菜单上指向“添加”,然后选择“文件”。将rules.vbn和memo.vbn文件添加到“示例”文件夹中。在文件系统编辑器中选择rules.vbn。在“属性”窗口中,将condition属性设置为checkboxa1=1。运行安装程序时,只在自定义的复选框被选中时才安装rules.vbn文件。在文件系统编辑器中选择memo.vbn文件。在“属性”窗口中,将condition属性设置为checkboxa1=1。运行安装程序时,只在自定义的复选框被选中时才安装memo.vbn文件。添加启动条件来检查internetexplorer版本此步骤检查在目标计算机上是否安装了internetexplorer5.0或更高版本,如果未安装所需版本的internetexplorer,将停止安装过程。注意此步骤旨在阐述启动条件的概念;“我的记事本”应用程序实际上并不依赖于internetexplorer。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“视图”菜单上指向“编辑器”,然后选择“启动条件”。在启动条件编辑器中,选择“目标计算机上的要求”节点。在“操作”菜单上,选择“添加文件启动条件”。将在“搜索目标计算机”节点下面添加一个“搜索file1”节点,而在“启动条件”节点下面添加一个“condition1”节点。将“搜索file1”重命名为“搜索internetexplorer”。在“属性”窗口中,将filename属性设置为iexplore.exe,将folder属性设置为[programfilesfolder],将depth属性设置为2,将minversion属性设置为5.00。选择“condition1”节点。将message属性设置为“该程序需要microsoftinternetexplorer5.0或更高版本。请安装internetexplorer并重新运行‘记事本’安装程序。”设置部署项目的可选属性此步骤设置一个属性,以便在目标计算机上没有正确版本的windows安装程序时,自动安装windows安装引导程序文件。在解决方案资源管理器中选择“我的记事本安装程序”项目。在“视图”菜单上,选择“属性页”。在“我的记事本安装程序”属性页中,选择“引导程序”下拉列表,然后选择“windows安装引导程序”。在“生成”菜单上选择“生成我的记事本安装程序”。在开发计算机上安装“我的记事本”在解决方案资源管理器中选择“我的记事本安装程序”项目。在“项目”菜单上选择“安装”。这将运行该安装程序并在开发计算机上安装“我的记事本”。将“我的记事本”部署到其他计算机上在windows资源管理器中,定位到项目目录并查找所生成的安装程序。默认路径是documentsandsettingsyourloginname我的记事本安装程序projectconfiguration我的记事本安装程序.msi,默认“项目配置”是“debug”
解决方案三:
推荐一款相当好用的安装包制作工作,istool也可以是innosetup操作非常容易。我就是用这个的。比起vs自带的,相当麻烦,编译也慢
解决方案四:
检测是否安装了其他程序,也可以实现的,不过要自己写代码,也很easy
解决方案五:
请问有没有人知道答案呢?
解决方案六:
快来人啊
解决方案七:
你是要代码吧?
解决方案八:
是啊,拜托了
解决方案九:
我用innosetup做的安装程序,中间有使用到是否安装了。netframework的例子。如果没有,则要先安装,netframework不过不适合你你真的可以尝试下innosetup,非常方便。
解决方案十:
晕了
解决方案十一:
看的头晕
解决方案十二:
有碰见了个嘴大的人
解决方案十三:
可以用IntallShield
解决方案十四:
非常好,受益匪浅啊!
解决方案十五:
解答的真的非常厉害
解决方案:
难道就没有代码判断的吗?