<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Rust on 豆子技术站</title><link>https://blog.91demo.top/categories/rust.html</link><description>Recent content in Rust on 豆子技术站</description><generator>Hugo -- 0.155.1</generator><language>zh-cn</language><lastBuildDate>Wed, 01 Jan 2025 18:00:00 +0800</lastBuildDate><atom:link href="https://blog.91demo.top/categories/rust/index.xml" rel="self" type="application/rss+xml"/><item><title>深度复盘Rust上传工具崩溃问题，优化报错提示</title><link>https://blog.91demo.top/rust/upartrs.html</link><pubDate>Wed, 01 Jan 2025 18:00:00 +0800</pubDate><guid>https://blog.91demo.top/rust/upartrs.html</guid><description>&lt;p&gt;最近，更新了上传文章工具 rust 版本，这个版本使用的库为 nwg，即 native-windows-gui 库，该库支持老的 Windows GUI。&lt;/p&gt;
&lt;p&gt;昨天，当我准备在另一台电脑上录制视频时，发现运行不起来，GUI 界面闪现一下，就退出了。以为版本太老，我先升级了 Rust 版本到最新版本（😭，不应该的原因，固定版本反而更可靠稳定一些）。&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;rustup update
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;升级完成后，cargo clean ,再 cargo run 重新运行。&lt;/p&gt;
&lt;p&gt;郁闷，还是报错。&lt;/p&gt;
&lt;p&gt;将 main.rs 文件中该行注释，&lt;code&gt;#![windows_subsystem = &amp;quot;windows&amp;quot;]&lt;/code&gt;，可以在命令行中查看报错信息，提示是找不到文件。我想了下，只有图片是文件，然后我将图片的路径修改，发现修改之后，编辑器还提示错误，找不到文件。重新改回去后，编辑器提示错误消失。说明不是这里的错误。&lt;/p&gt;
&lt;p&gt;我真的晕了。从网上查找问题原因，没有找到此类问题的解决方法，郁闷。在查找时，发现了另一个 Windows 官方支持的 rust 库，就叫 windows，打算有时间了用这个库重写一下。&lt;/p&gt;
&lt;p&gt;今天，我又查看了下另一台电脑上的这个项目，发现可以正常运行，将 rust 升级到最新版本后，还是可以运行。在看到配置文件后，我才恍然大悟，原来是查找的是这个配置文件。我赶紧扒拉代码确认，发现确实是这个问题。&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;let conf = Ini::load_from_file(&amp;#34;conf.ini&amp;#34;).unwrap();
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;上面是使用文件的地方，找不到文件 panic。我这里优化了一下，让错误提醒的更明显一些。这样我就瞬间能知道问题原因了。&lt;/p&gt;
&lt;p&gt;优化后的代码如下：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;let conf = Ini::load_from_file(&amp;#34;conf.ini&amp;#34;).expect(&amp;#34;please config conf.ini file&amp;#34;);
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;有些问题其实很简单，但由于时间长了，还是会一头懵，如果报错信息提示完善一点，会很快定位到问题。&lt;/p&gt;</description></item><item><title>使用Rust基于 Native-Windows-GUI 构建的轻量小程序码生成工具</title><link>https://blog.91demo.top/rust/mpcode-intro.html</link><pubDate>Tue, 02 Nov 2021 12:40:16 +0800</pubDate><guid>https://blog.91demo.top/rust/mpcode-intro.html</guid><description>早于官方后台功能的桌面实践：探索使用 Rust + native-windows-gui 打造极致轻量的小程序工具。</description></item><item><title>构建高可靠 APK 上传工具，彻底终结网络超时与手误引发的生产事故</title><link>https://blog.91demo.top/rust/apkup-rs.html</link><pubDate>Thu, 02 Jan 2020 12:40:16 +0800</pubDate><guid>https://blog.91demo.top/rust/apkup-rs.html</guid><description>记录一个未公开的 Rust 实战小工具，分享如何通过技术手段解决网络超时与手误操作带来的生产事故。</description></item></channel></rss>