C# WinForm程序在啟動主窗體前執行更新文件(exe) 要求:在網上找了個更新的exe文件。現期望達到的效果時:運行程序時先用更新文件(exe)檢查並更新程序,在程序更新完後再啟動主窗體。有代碼更佳!謝謝! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.部署的时候,增加一个update.exe,该程序用于检测是否有新版,如果有,下载,然后update.exe中止旧的exe程序,再将最新的exe覆盖旧的exe。再启动已经更新的exe,结果update.exe.2.直接用旧的exe检测更新,并下载最新的文件到临时文件夹。启动临时文件夹中的新exe,然后旧的exe关闭。新的exe将自己复制到旧的exe目录下以覆盖旧exe。然后启动更新后的exe。临时文件夹的exe关闭。 我们的解决方法大致如下:private void StartPro(){ //获取版本号 string thisversion=GetVersion(); // 与本地存储的版本号进行比较,如果相等则启动程序 if (thisversion==CurVersion) { //启动程序,fullpath程序入口点路径 System.Diagnostics.Process.Start(fullpath,pars); } else { //下载最新程序 DoDownLoad(); //启动程序..... }} System.Diagnostics.Process.Start(Application.StartupPath + "\\AutoUpdate.exe");----啟動更新exe文件。不知道這段代碼放在那?是不是放在Application.Run(new frmMain())前面還是其他地方?我識了,但是沒成功! 你可以放到PROGRAM 的MAIN代码段中 不要修改你的exe。直接新建一个启动管理器exe。安装后每次单击快捷方式都启动这个启动管理器exe就好了。这个启动管理器exe可以这样设计。首先找更新,有更新就下载然后启动安装程序,随后管理器退出以便安装时覆盖所有要更新的exe和dll。如果没有找到更新,管理器通过Process.Start启动主程序,随后自己退出。 可以写一个BAT文件,用DOS来COPY SERVER:\ CLIENT:\ Y如果相同,就跳过。 自动更新的Exe在登陆的时候自动运行,检测有无更新文件,如果有,先把更新文件下载到本地,然后提示关闭正在使用的主程序,接下来运行Update.exe把你的文件更新到应该更新的位置。 把版本信息写进注册表,用UPDATE直接比对注册表中的版本号.不同则进行升级,完成后,向注册表导入现在的版本号. 求c#大神帮我解决简单问题,我是新手 庆祝老婆生日,发布《C#枚举硬件设备(升级版)》源码 初学者求教 自定义控件问题。。 如何实现listview数据打印预览! CommandTimeout是否有统一设置的办法,不用每一次都定义时间? C# Lucene.Net 索引 C# 中comboBox选中的问题 请问在C#中如何实现退出程序比较好? 如何在visio中画出DateTime .NET怎么调用Apache SOAP for Java Service ?????? C#初学者 关于输出表格的问题!
部署的时候,增加一个update.exe,该程序用于检测是否有新版,如果有,下载,然后update.exe中止旧的exe程序,再将最新的exe覆盖旧的exe。再启动已经更新的exe,结果update.exe.2.
直接用旧的exe检测更新,并下载最新的文件到临时文件夹。启动临时文件夹中的新exe,然后旧的exe关闭。新的exe将自己复制到旧的exe目录下以覆盖旧exe。然后启动更新后的exe。临时文件夹的exe关闭。
private void StartPro()
{
//获取版本号
string thisversion=GetVersion();
// 与本地存储的版本号进行比较,如果相等则启动程序
if (thisversion==CurVersion)
{
//启动程序,fullpath程序入口点路径
System.Diagnostics.Process.Start(fullpath,pars);
}
else
{
//下载最新程序
DoDownLoad();
//启动程序.....
}
}
不知道這段代碼放在那?是不是放在Application.Run(new frmMain())前面還是其他地方?我識了,但是沒成功!