From ee51cba780fa70c8d18865f7a4356334c0623317 Mon Sep 17 00:00:00 2001 From: taynpg Date: Tue, 16 Apr 2024 15:09:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AE=89=E8=A3=85=E5=88=B0?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E6=A0=8F=E6=97=B6=E6=B7=BB=E5=8A=A0=E6=9D=83?= =?UTF-8?q?=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MainWidget.cpp | 4 ++-- adddesktop.cpp | 8 +++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/MainWidget.cpp b/MainWidget.cpp index 30d9e5e..5e06833 100644 --- a/MainWidget.cpp +++ b/MainWidget.cpp @@ -7,7 +7,7 @@ MainWidget::MainWidget(QWidget* parent) : QWidget(parent), ui(new Ui::MainWidget) { ui->setupUi(this); - setWindowTitle("packqt v1.0.3"); + setWindowTitle("packqt v1.0.4"); connect_operator(); control_init(); } @@ -310,4 +310,4 @@ bool MainWidget::add_run_sh(const std::string& out_dir, const std::string& exe_n out.close(); cmd_exec(std::string("chmod +x " + out_sh)); return true; -} \ No newline at end of file +} diff --git a/adddesktop.cpp b/adddesktop.cpp index e940fda..15cbc1a 100644 --- a/adddesktop.cpp +++ b/adddesktop.cpp @@ -37,7 +37,7 @@ AddDesktop::AddDesktop(QWidget* parent) : QDialog(parent), ui(new Ui::AddDesktop connect(ui->btnSelectBinary, &QPushButton::clicked, this, [=]() { MainWidget::SelectFile(this, ui->edBinary, "请选择二进制文件", "所有文件 (*)"); }); connect(ui->btnSelectIco, &QPushButton::clicked, this, - [=]() { MainWidget::SelectFile(this, ui->edIco, "请选择ico图标文件", "ico图标(*.ico);;svg图标(*.svg);;所有文件 (*)"); }); + [=]() { MainWidget::SelectFile(this, ui->edIco, "请选择ico图标文件", "png图标(*.png);;ico图标(*.ico);;svg图标(*.svg);;所有文件 (*)"); }); connect(ui->btnInstall, &QPushButton::clicked, this, &AddDesktop::install_to_desktop); } @@ -66,6 +66,12 @@ void AddDesktop::install_to_desktop() } std::string binaryName = fs::path(binaryPath).filename().string(); fs::path sh_path = fs::path(binaryPath).parent_path().append(binaryName + ".sh"); + + std::string cmodBin = "chmod +x " + binaryPath; + std::string cmodSh = "chmod +x " + sh_path.string(); + MainWidget::cmd_exec(cmodBin); + MainWidget::cmd_exec(cmodSh); + if (!fs::exists(sh_path)) { MainWidget::add_run_sh(sh_path.parent_path().string(), binaryName); }