程序示例精选
C++ wpf自制软件打包安装更新源码实例
如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助!
前言
这篇博客针对《C++ wpf自制软件打包安装更新源码实例》编写代码,代码整洁,规则,易读。 学习与应用推荐首选。
运行结果
![](https://i-blog.csdnimg.cn/blog_migrate/4d84309b359be4dee84eb0b8c8302ed3.png)
文章目录
一、所需工具软件
二、使用步骤
1. 主要代码
2. 运行结果
三、在线协助
一、所需工具软件
1. VS2019, Qt
2. C++
二、使用步骤
代码如下(示例):
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结束
运行结果
![](https://i-blog.csdnimg.cn/blog_migrate/4d84309b359be4dee84eb0b8c8302ed3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4ae0fd8f39f7db5b977fb5ae9dba2e61.png)
三、在线协助:
如需安装运行环境或远程调试,见文章底部个人 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