重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
vb点虐 会在系统里点虐 ,要想手工删除几乎是不可能的,建议你还是原有的反安装程序来卸载。
成都创新互联是专业的徽州网站建设公司,徽州接单;提供成都网站设计、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行徽州网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
1.新建安装和部署。 打开你所写的项目,在解决方案上右键-添加-新建项目。选择其他项目类型-安装和部署-安装项目。在名称中把名字改为你所希望的名字,然后确定。 2.确定后打开文件系统,然后单击应用程序文件夹,在右边空白处右键-添加-项目输出。3.选择主输出,然后确定。 4.在刚添加的主输出上右键,创建其快捷方式。可以重命名也可不重命名。5.剪切刚创建的快捷方式,然后单击用户的程序菜单,在其上右键,添加,文件夹,重命名文件夹。这个文件夹名字就是你在开始,所有程序中显示的名字。然后单击刚创建的文件夹,在右边空白处粘贴快捷方式,安装好程序后,这个快捷方式会出现在所有程序中。 6.像上面一样再创建一个快捷方式,剪切,然后单击用户桌面,粘贴。安装完程序后,这个快捷方式出现在桌面。 7.右击左边的"应用程序文件夹"打开属性对话框:将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉,
不然的话做好的安装程序默认安装目录会是"c:\programm file\你的用户名\安装解决方案名称"。 8.右键你的安装项目名,属性。在打开的属性页中,选择"系统必备",在打开的系统必备页中,选中如下图中的选择项,选上以后,在生成的安装文件包中包含点虐 framework组件,然后确定。 9.改变桌面和开始-所有程序中该程序的默认图标。在应用程序文件夹右边空白处,右键-添加-文件,添加一个ico文件。打开用户的程序菜单-'你的程序名',在右边的快捷方式上右键,属性窗口。向其属性中的icon属性添加刚添加的ico图标。同理,打开用户桌面,在右边的快捷方式上右键,属性窗口。向其属性中的icon属性添加刚添加的ico图标。 10.添加卸载功能。在应用程序文件夹右边空白处,右键-添加-文件,选择c:\windows\system32文件夹下的msiexec.exe文件。然后重命名为Uninstall.exe。改不改名字都可以。然后创建快捷方式,剪切到用户的程序菜单-'你的程序名'。 11.用鼠标左键单击安装项目名,查看其属性,注意不是右键,属性。查看其ProductCode属性。然后复制该属性的值。如图: 12.然后打开你创建的那个卸载快捷方式的属性对话框,在Aguements属性中输入"/x {ProductCode}",本例为/x {D8DB4DCF-B28A-49CB-9840-E36D68FD7EE1}。 13.右键安装项目名,单击生成,即可生成带有卸载功能的安装程序了.
由于你要求的是能够动态的加载与卸载,所以这里选用了appdomain的load方法来加载一个程序集(同样的,卸载的时候调用appdomain的静态方法Unload即可).
另外由于,在appdomain.load的时候remoting会试图将程序集序列化到defaultdomain中去,这会产生问题,通常以一个"FileNotFoundException"结束,因此采用了一种折中的办法.
思路如下:
1.建立一个新的程序集,里面包含一个轻量的类型,这个类型只包含一个用来加载程序集的公共方法;
2.在你的主程序里面,用appdomain.load来加载上一步的程序集,接着实例化上一步的轻量的类型;
3.而后就可以像操作通常的对象一样,调用它上面的方法来加载你想要的程序集了;
源代码已经打包发给你了,
你看看吧~
如果有问题,再找我哈
打包的具体操作步骤:
1)新建“安装和部署项目”-- “安装向导”
2)选择菜单中 项目-- 添加-- 文件(这里选“创建用于windows应用程序.exe你的数据库文件”)-- 打开
3)一般会自动将依赖项添加到“检测到的依赖项”,如果没有,那么我们要手动将其加入4)
Crystal_Managed2003.msm (如果有水晶报表)
dotnetfxredist_x86.msm (点虐 一定是必须的)
... (如果有引用其他的dll)
4)手动加入要包含的文件:项目-- 添加-- 合并模块(添加你的程序文件) (包括dotNetFramework和MDAC27)
位于:C:\Program Files\Common Files\Merge Modules\ 下
具体功能如下:
(托管组件 MSM 处理所有托管组件的分发,其中包括 Windows 窗体查看器、Web 窗体查看器和所有 Crystal Decisions 命名空间)
* Crystal_Managed2003.msm、
Crystal_Managed2003_chs.msm、
(对于使报表运行所需的所有其他文件,由数据库访问 MSM 处理其分发。其中包括数据库、导出和图表驱动程序。)
* Crystal_Database_access2003.msm、
Crystal_Database_access2003_chs.msm、
(KeyCode MSM 处理 Crystal Decisions 密钥号码的安装,注意是添加合并模块,否则没有“MergeMouduleProperties”属性)
* Crystal_regwiz2003.msm、
(是vc的运行库,估计是Crystal Report或涉及到的某些程序是用vc写的,所以需要它!)
VC_User_CRT71_RTL_X86_---.msm、
VC_User_STL71_RTL_X86_---.msm、
5)打开解决方案-- 右键点击Crystal_regwiz2003.msm的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)
6)生成解决方案(或直接按Ctrl+Shift+B)
至此整个分发程序已经做好,再把刚才做的那个安装程序双击一下……
-----------------------------------------------------------------------
打包时加入卸载功能:
方法一:
1.在打包项目中添加文件msiexec.exe(一般可在c:\windows\system32\下找到)
2.在文件系统视图中选择应用程序文件夹,在msiexec.exe上按右键,选择创建快捷方式,重命名快捷方式为 "卸载 ".
3.更改此快捷方式的Arguments 为 "/x {产品id} ",产品id的值为打包项目的ProductCode属性值.
方法二:(推荐)
1.先生成安装包,记下ProductCode,下面要用到
2.用VS点虐 建立一个新的控制台程序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的快捷方式
如果装个ms的控件的话,则直接把framework和msac打在包里。