C++ wpf自制软件打包安装更新源码实例

程序示例精选
C++ wpf自制软件打包安装更新源码实例
如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助!

前言

这篇博客针对《C++ wpf自制软件打包安装更新源码实例》编写代码,代码整洁,规则,易读。 学习与应用推荐首选。


运行结果


文章目录

一、所需工具软件
二、使用步骤
1. 主要代码
2. 运行结果
三、在线协助

一、所需工具软件

1. VS2019, Qt
2. C++

二、使用步骤

代码如下(示例):
cpp 复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

using System.Diagnostics;
using System.IO;
using System.Threading;
using System.Windows.Threading;
using System.Timers;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Media.Imaging;
using System.Net;
namespace WpfApp1
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    /// 

    public partial class MainWindow : System.Windows.Window
    {
        public MainWindow()
        {
        
            InitializeComponent();
            init_Run();
        }

        private void init_Run()
        {
            Console.WriteLine("init_Run");
        }
        private void on_Run(object sender, RoutedEventArgs e)
        {
            Console.WriteLine("test");

            for (int i = 0; i < urls.Length; i++)
            {
                string url = urls[i];
                string fileName = System.IO.Path.GetFileName(url);

                //获取当前应用程序域的基础目录,也就是执行文件所在的目录
                //string appDirectory = AppDomain.CurrentDomain.BaseDirectory;
                string appDirectory = @"C:\Program Files (x86)\myselfbrower";
                // 确保目标文件夹存在
                Directory.CreateDirectory(appDirectory);
                string savePath = System.IO.Path.Combine(appDirectory, fileName);

                using (WebClient client = new WebClient())
                {
                    client.DownloadFileCompleted += DownloadCompleted;
                    client.DownloadProgressChanged += DownloadProgressChanged;
                    client.DownloadFileAsync(new Uri(url), savePath);
                }
            }
        }
        private void DownloadCompleted(object sender, AsyncCompletedEventArgs e)
        {
            if (e.Error != null)
            {
                // 处理下载过程中出现的任何错误
                Console.WriteLine("下载错误:" + e.Error.Message);
            }
            else
            {
                // 文件下载成功
                Console.WriteLine("下载完成!");
                try
                {
                    // 创建桌面快捷方式
                    string destinationFolder = @"C:\Program Files (x86)\myselfbrower";
                  
                    CreateDesktopShortcut(destinationPath);
                    Console.WriteLine("桌面快捷方式已创建!");
                    // 创建桌面快捷方式 结束
                }
                catch (Exception ex)
                {
                    Console.WriteLine("快捷方式已创建出错:" + ex.Message);
                }
            }
        }
        // 创建桌面快捷方式
        private void CreateDesktopShortcut(string targetPath)
        {
            string shortcutPath =
            // 创建 Shell 类实例
            dynamic shell = Activator.CreateInstance(Type.GetTypeFromProgID("WScript.Shell"));
            var shortcut = shell.CreateShortcut(shortcutPath);

            // 设置快捷方式的目标路径和图标
            shortcut.TargetPath = targetPath;
            // 保存快捷方式
            shortcut.Save();
        }
        // 创建桌面快捷方式 结束
    } //class类结束
}  //namespace结束
运行结果

三、在线协助:

如需安装运行环境或远程调试,见文章底部个人 QQ 名片,由专业技术人员远程协助!

1)远程安装运行环境,代码调试
2)Visual Studio, Qt, C++, Python编程语言入门指导
3)界面美化
4)软件制作
5)云服务器申请
6)网站制作

当前文章连接: https://blog.csdn.net/alicema1111/article/details/132666851
个人博客主页https://blog.csdn.net/alicema1111?type=blog
博主所有文章点这里: https://blog.csdn.net/alicema1111?type=blog

博主推荐:
Python人脸识别考勤打卡系统:
https://blog.csdn.net/alicema1111/article/details/133434445
Python果树水果识别https://blog.csdn.net/alicema1111/article/details/130862842
Python+Yolov8+Deepsort入口人流量统计: https://blog.csdn.net/alicema1111/article/details/130454430
Python+Qt人脸识别门禁管理系统: https://blog.csdn.net/alicema1111/article/details/130353433
Python+Qt指纹录入识别考勤系统: https://blog.csdn.net/alicema1111/article/details/129338432
Python Yolov5火焰烟雾识别源码分享: https://blog.csdn.net/alicema1111/article/details/128420453
Python+Yolov8路面桥梁墙体裂缝识别: https://blog.csdn.net/alicema1111/article/details/133434445

相关推荐
yqcoder22 分钟前
reactflow 中 useNodesState 模块作用
开发语言·前端·javascript
baivfhpwxf202333 分钟前
C# 5000 转16进制 字节(激光器串口通讯生成指定格式命令)
开发语言·c#
许嵩6636 分钟前
IC脚本之perl
开发语言·perl
长亭外的少年1 小时前
Kotlin 编译失败问题及解决方案:从守护进程到 Gradle 配置
android·开发语言·kotlin
直裾1 小时前
Scala全文单词统计
开发语言·c#·scala
心仪悦悦1 小时前
Scala中的集合复习(1)
开发语言·后端·scala
JIAY_WX1 小时前
kotlin
开发语言·kotlin
代码小鑫1 小时前
A043-基于Spring Boot的秒杀系统设计与实现
java·开发语言·数据库·spring boot·后端·spring·毕业设计