clickonce部署后的手动更新代码

* /**/ ///<summary>
        
/// 检测网络更新
        
/// </summary>

         private   void  InstallUpdateSyncWithInfo()
        ...
{
            UpdateCheckInfo info 
= null;


            
if (ApplicationDeployment.IsNetworkDeployed)
            ...
{
                ApplicationDeployment ad 
= ApplicationDeployment.CurrentDeployment;

                
try
                ...
{
                    info 
= ad.CheckForDetailedUpdate();

                }

                
catch (DeploymentDownloadException dde)
                ...
{
                    MessageBox.Show(
"软件升级发现异常.  请检测网络情况后重新升经. 错误原因为:" + dde.Message, "升级检测", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    
return;
                }

                
catch (InvalidDeploymentException ide)
                ...
{
                    MessageBox.Show(
"网络中无法检测到可更新的部署文件,请与软件开发商联系. 错误原因: " + ide.Message, "升级检测", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    
return;
                }

                
catch (InvalidOperationException ioe)
                ...
{
                    MessageBox.Show(
"软件无法更新. 请与软件开发商联系. 错误原因: " + ioe.Message, "升级检测", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    
return;
                }


                
if (info.UpdateAvailable)
                ...
{
                    Boolean doUpdate 
= true;

                    
if (!info.IsUpdateRequired)
                    ...
{
                        DialogResult dr 
= MessageBox.Show("检测到新版本,版本号为:" + info.AvailableVersion.ToString() + ",是否现在升级?""升级检测", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                        
if (!(DialogResult.OK == dr))
                        ...
{
                            doUpdate 
= false;
                        }

                    }


                    
if (doUpdate)
                    ...
{
                        
try
                        ...
{
                            ad.Update();
                            MessageBox.Show(
"升级完毕,请重启软件以使用新版本.""升级检测", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            Application.Restart();
                        }

                        
catch (DeploymentDownloadException dde)
                        ...
{
                            MessageBox.Show(
"软件升级发现异常.  请检测网络情况后重新升经. 错误原因为: " + dde, "升级检测", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            
return;
                        }

                    }

                }

                
else
                ...
{
                    MessageBox.Show(
"您现在使用的已经是最新版本软件!""升级检测", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

            }

            
else
            ...
{
                MessageBox.Show(
"不是网络部署软件,无法更新""升级检测", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }


        }
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值