diff --git a/Makefile b/Makefile index d39f456..e505ca6 100755 --- a/Makefile +++ b/Makefile @@ -16,6 +16,8 @@ build: cp -rv AllInstall.py deb/opt/apps/deepin-wine-runner cp -rv kill.sh deb/opt/apps/deepin-wine-runner cp -rv InstallWineOnDeepin23Alpha.py deb/opt/apps/deepin-wine-runner + echo "[]" > deb/opt/apps/deepin-wine-runner/wine/winelist.json + rm -rfv deb/opt/apps/deepin-wine-runner/wine/winelist.json cp -rv req deb/opt/apps/deepin-wine-runner cp -rv BuildDesktop.py deb/opt/apps/deepin-wine-runner cp -rv RegShot deb/opt/apps/deepin-wine-runner diff --git a/deb/DEBIAN/control b/deb/DEBIAN/control index 99a144b..7f12e7a 100755 --- a/deb/DEBIAN/control +++ b/deb/DEBIAN/control @@ -9,7 +9,7 @@ Recommends: winbind, wimtools Section: utils Conflicts: spark.deepin-venturi-setter, spark-deepin-wine5-application-packer Replaces: spark.deepin-venturi-setter, spark-deepin-wine5-application-packer -Installed-Size: 23776 +Installed-Size: 21844 Description: gfdgd xi、为什么您不喜欢熊出没和阿布呢 制作的 wine 运行器 2.4.1 更新内容: ※1、不基于生态适配活动脚本的打包器支持只生成制作容器的 7z 包 diff --git a/deb/opt/apps/deepin-wine-runner/AllInstall.py b/deb/opt/apps/deepin-wine-runner/AllInstall.py index ad61ad8..cf43bae 100755 --- a/deb/opt/apps/deepin-wine-runner/AllInstall.py +++ b/deb/opt/apps/deepin-wine-runner/AllInstall.py @@ -57,30 +57,37 @@ print("请问是否要更新操作系统?[Y/N]", end=' ') choose = input().upper() if not choose == "N": os.system("sudo apt upgrade -y") -print("请问是否要安装原版 wine(wine64)?[Y/N]", end=' ') -choose = input().upper() -if not choose == "N": - os.system("sudo apt install wine -y") -print("请问是否要安装 deepin-wine?[Y/N]", end=' ') -choose = input().upper() -if not choose == "N": - os.system("sudo apt install deepin-wine -y") -print("请问是否要安装 deepin-wine5(需要安装最新版星火应用商店)?[Y/N]", end=' ') -choose = input().upper() -print("请问是否要安装 deepin-wine5-stable?[Y/N]", end=' ') -choose = input().upper() -if not choose == "N": - os.system("sudo apt install deepin-wine5-stable -y") -print("请问是否要安装 deepin-wine6-stable?[Y/N]", end=' ') -choose = input().upper() -if not choose == "N": - os.system("sudo apt install deepin-wine6-stable -y") -print("请问是否要安装 spark-wine7-devel(需要安装最新版星火应用商店)?[Y/N]", end=' ') -choose = input().upper() -if not choose == "N": - InstallSparkWine("spark-wine7-devel") -print("请问是否要安装 ukylin-wine(需要添加 ukylin 源,但因为可能会导致系统问题,将不会自动添加)?[Y/N]", end=" ") -choose = input().upper() -if not choose == "N": - os.system("sudo apt install ukylin-wine -y") +if os.system("which wine > /dev/null"): + print("请问是否要安装原版 wine(wine64)?[Y/N]", end=' ') + choose = input().upper() + if not choose == "N": + os.system("sudo apt install wine -y") +if os.system("which deepin-wine > /dev/null"): + print("请问是否要安装 deepin-wine?[Y/N]", end=' ') + choose = input().upper() + if not choose == "N": + os.system("sudo apt install deepin-wine -y") +if os.system("which deepin-wine5 > /dev/null"): + print("请问是否要安装 deepin-wine5(需要安装最新版星火应用商店)?[Y/N]", end=' ') + choose = input().upper() +if os.system("which deepin-wine5-stable > /dev/null"): + print("请问是否要安装 deepin-wine5-stable?[Y/N]", end=' ') + choose = input().upper() + if not choose == "N": + os.system("sudo apt install deepin-wine5-stable -y") +if os.system("which deepin-wine6-stable > /dev/null"): + print("请问是否要安装 deepin-wine6-stable?[Y/N]", end=' ') + choose = input().upper() + if not choose == "N": + os.system("sudo apt install deepin-wine6-stable -y") +if os.system("which spark-wine7-devel > /dev/null"): + print("请问是否要安装 spark-wine7-devel(需要安装最新版星火应用商店)?[Y/N]", end=' ') + choose = input().upper() + if not choose == "N": + InstallSparkWine("spark-wine7-devel") +if os.system("which ukylin-wine > /dev/null"): + print("请问是否要安装 ukylin-wine(需要添加 ukylin 源,但因为可能会导致系统问题,将不会自动添加)?[Y/N]", end=" ") + choose = input().upper() + if not choose == "N": + os.system("sudo apt install ukylin-wine -y") print("全部完成!") \ No newline at end of file diff --git a/deb/opt/apps/deepin-wine-runner/BuildDesktop.py b/deb/opt/apps/deepin-wine-runner/BuildDesktop.py new file mode 100755 index 0000000..ec766ca --- /dev/null +++ b/deb/opt/apps/deepin-wine-runner/BuildDesktop.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python3 +# 使用系统默认的 python3 运行 +################################################################################################################# +# 作者:gfdgd xi +# 版本:2.5.0 +# 更新时间:2022年11月20日 +# 感谢:感谢 wine、deepin-wine 以及星火团队,提供了 wine、deepin-wine、spark-wine-devel 给大家使用,让我能做这个程序 +# 基于 Python3 的 PyQt5 构建 +################################################################################################################# +################# +# 引入所需的库 +################# +import os +import sys +import traceback +import PyQt5.QtGui as QtGui +import PyQt5.QtCore as QtCore +import PyQt5.QtWidgets as QtWidgets + +desktopList = [] +desktopUsrList = [] + +def GetDesktopList(path): + for i in os.listdir(path): + if os.path.isdir(f"{path}/{i}"): + GetDesktopList(f"{path}/{i}") + if os.path.isfile(f"{path}/{i}"): + try: + desktop = {} + with open(f"{path}/{i}") as file: + things = file.read() + for k in things.splitlines(): + if not "=" in k: + continue + desktop[k[:k.index("=")].lower()] = k[k.index("=") + 1:] + desktopList.append([desktop["Name".lower()], desktop["Icon".lower()], desktop["Exec".lower()], f"{path}/{i}"]) + except: + traceback.print_exc() + delButton.setEnabled(len(desktopList)) + +class DesktopList(QtCore.QThread): + show = QtCore.pyqtSignal(int) + def __init__(self) -> None: + super().__init__() + + def run(self): + if os.path.exists(f"{homePath}/.local/share/applications"): + GetDesktopList(f"{homePath}/.local/share/applications") + self.show.emit(0) + +def ShowDesktop(temp): + nmodel = QtGui.QStandardItemModel(window) + if not len(desktopList): + item = QtGui.QStandardItem("无") + nmodel.appendRow(item) + y = 0 + for i in desktopList: + #item = QtGui.QStandardItem(QtGui.QIcon(i[1]), i[0]) + #nmodel.appendRow(item) + if os.path.exists(i[1]): + nmodel.setItem(y, 0, QtGui.QStandardItem(QtGui.QIcon(i[1]), i[0])) + else: + nmodel.setItem(y, 0, QtGui.QStandardItem(QtGui.QIcon.fromTheme(i[1]), i[0])) + nmodel.setItem(y, 1, QtGui.QStandardItem(i[2])) + nmodel.setItem(y, 2, QtGui.QStandardItem(i[3])) + y += 1 + nmodel.setHeaderData(0, QtCore.Qt.Horizontal, "程序名") + nmodel.setHeaderData(1, QtCore.Qt.Horizontal, "运行路径") + nmodel.setHeaderData(2, QtCore.Qt.Horizontal, ".desktop 文件所在路径") + nmodel.setColumnCount(3) + desktopListView.setModel(nmodel) + +def GetDesktopThread(): + global desktop + desktop = DesktopList() + desktop.show.connect(ShowDesktop) + desktop.start() + +def DeleteButton(): + index = desktopListView.currentIndex().row() + if index < 0: + QtWidgets.QMessageBox.critical(window, "错误", "未选中任何项") + return + print(index) + print(desktopList[index][3]) + #desktopListView.rowMoved(index) + + #desktopListView.removeRow(index) + try: + os.remove(desktopList[index][3]) + del desktopList[index] + ShowDesktop(0) + except: + traceback.print_exc() + QtWidgets.QMessageBox.critical(window, "错误", traceback.format_exc()) + + +programPath = os.path.split(os.path.realpath(__file__))[0] # 返回 string +homePath = os.getenv("HOME") +iconPath = "{}/deepin-wine-runner.svg".format(programPath) +#GetDesktopList(f"{homePath}/.local/share/applications") +#print(desktopList) +app = QtWidgets.QApplication(sys.argv) +window = QtWidgets.QMainWindow() +widget = QtWidgets.QWidget() +layout = QtWidgets.QGridLayout() +delButton = QtWidgets.QPushButton("删除指定图标") +delButton.clicked.connect(DeleteButton) +#desktopListView = QtWidgets.QListView() +desktopListView = QtWidgets.QTableView() +desktopListView.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) +desktopListView.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)#(QAbstractItemView::SelectRows) +layout.addWidget(desktopListView, 0, 0, 1, 4) +layout.addWidget(delButton, 1, 3, 1, 1) +widget.setLayout(layout) +window.setCentralWidget(widget) +window.setWindowTitle("图标管理") +window.resize(int(window.frameGeometry().width() * 1.5), int(window.frameGeometry().height() * 1.2)) +window.setWindowIcon(QtGui.QIcon(f"{programPath}/deepin-wine-runner.svg")) +window.show() +GetDesktopThread() +app.exec_() \ No newline at end of file diff --git a/deb/opt/apps/deepin-wine-runner/InstallWineOnDeepin23Alpha.py b/deb/opt/apps/deepin-wine-runner/InstallWineOnDeepin23Alpha.py new file mode 100755 index 0000000..61d074b --- /dev/null +++ b/deb/opt/apps/deepin-wine-runner/InstallWineOnDeepin23Alpha.py @@ -0,0 +1,116 @@ +#!/usr/bin/env python3 +# 使用系统默认的 python3 运行 +########################################################################################### +# 作者:gfdgd xi、为什么您不喜欢熊出没和阿布呢 +# 版本:2.5.0 +# 更新时间:2022年11月15日 +# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序 +# 基于 Python3 构建 +########################################################################################### +################# +# 引入所需的库 +################# +import os +import webbrowser + +def YesOrNo(): + if input().replace(" ", "").upper() == "N": + return False + return True + +def InstallWineSpark(wine): + print(f"开始安装 {wine}") + #os.system("pkexec apt update") + if not os.system(f"pkexec aptss install {wine} -y"): + print(f"{wine} 安装失败!") + PressEnter() + else: + print("安装完成") + +def InstallWine(wine): + print(f"开始安装 {wine}") + os.system("pkexec apt update") + if not os.system(f"pkexec apt install {wine} -y"): + print(f"{wine} 安装失败!") + PressEnter() + else: + print("安装完成") + +def CheckSparkStore(): + return os.system("which spark-store > /dev/null") + os.system("which aptss > /dev/null") + +def InstallSparkStore(): + if not CheckSparkStore: + return + print("按下回车键后打开星火应用商店官网,手动安装完星火应用商店后再次按下回车以继续") + webbrowser.open_new_tab("https://spark-app.store/") + PressEnter() + print("安装星火应用商店后按下回车……") + PressEnter() + while True: + if not os.system("which spark-store > /dev/null"): + if not os.system("which aptss > /dev/null"): + break + print("您暂未安装最新版本的星火应用商店,请更新版本后按下回车") + PressEnter() + continue + print("您暂未安装星火应用商店,请在安装后按下回车") + PressEnter() + continue + +def InstallDeepinAppStore(): + print("开始安装官方应用商店") + if not os.system("pkexec apt install deepin-app-store -y"): + print("安装失败!按回车键后退出") + PressEnter() + exit() + else: + print("安装完成") + +def PressEnter(): + input("按回车键后继续……") + +if __name__ == "__main__": + print(''' +m m " +# # # mmm m mm mmm +" #"# # # #" # #" # + ## ##" # # # #"""" + # # mm#mm # # "#mm" + + +''') + print("后续操作需要有 root 权限") + programPath = os.path.split(os.path.realpath(__file__))[0] # 返回 string + # 敢这样浪不还是 Alpha 源有官方应用商店 + if os.system("which deepin-home-appstore-client > /dev/null"): + print("暂未安装官方应用商店,安装后才能继续,是否安装?[Y/N]") + if YesOrNo: + InstallDeepinAppStore() + deepinWineList = [ + #"deepin-wine", + #"deepin-wine5-stable", + "deepin-wine6-stable" + ] + for i in deepinWineList: + if not os.system(f"which {i} > /dev/null"): + print(f"{i} 已安装") + continue + print(f"是否安装 {i}?[Y/N]") + if YesOrNo: + InstallWine(i) + sparkWineList = [ + #"deepin-wine", + #"deepin-wine5", + #"spark-wine7-devel" + ] + for i in sparkWineList: + if not os.system(f"which {i} > /dev/null"): + continue + print(f"是否安装 {i}?[Y/N]") + if YesOrNo: + InstallSparkStore() + InstallWineSpark(i) + print("按回车键退出") + PressEnter() + exit() diff --git a/deb/opt/apps/deepin-wine-runner/Test/net.exe b/deb/opt/apps/deepin-wine-runner/Test/net.exe new file mode 100755 index 0000000..0be1c09 Binary files /dev/null and b/deb/opt/apps/deepin-wine-runner/Test/net.exe differ diff --git a/deb/opt/apps/deepin-wine-runner/Test/netandie.exe b/deb/opt/apps/deepin-wine-runner/Test/netandie.exe new file mode 100755 index 0000000..22d0920 Binary files /dev/null and b/deb/opt/apps/deepin-wine-runner/Test/netandie.exe differ diff --git a/deb/opt/apps/deepin-wine-runner/Test/vb.exe b/deb/opt/apps/deepin-wine-runner/Test/vb.exe new file mode 100755 index 0000000..1945430 Binary files /dev/null and b/deb/opt/apps/deepin-wine-runner/Test/vb.exe differ diff --git a/deb/opt/apps/deepin-wine-runner/deepin-wine-runner b/deb/opt/apps/deepin-wine-runner/deepin-wine-runner index 3d10555..cbef656 100755 --- a/deb/opt/apps/deepin-wine-runner/deepin-wine-runner +++ b/deb/opt/apps/deepin-wine-runner/deepin-wine-runner @@ -2080,18 +2080,20 @@ updateThingsString = '''※1、容器自动配置脚本 GUI 查看介绍使用 Q ※8、支持静态获取可执行文件可以调用的 Dll 并提供解决方案 ※9、支持移除指定的 .desktop 快捷方式 10、修复了不基于生态适配活动脚本打包器在选择 arm 打包架构下容器自动删除脚本取消勾选无用的问题 +11、优化文案、新增友链 +12、提供了部分组件的测试功能 ''' for i in information["Thank"]: thankText += f"{i}\n" -updateTime = "2022年11月19日" +updateTime = "2022年11月23日" about = f'''

关于

-

一个能让Linux用户更加方便运行Windows应用的程序,内置了对wine图形化的支持和各种Wine工具和自制Wine程序打包器、运行库安装工具等等

-

同时也内置了基于VirtualBox制作的小白Windows虚拟机安装工具,可以做到只需要用户下载系统镜像并点击安装即可,无需顾及虚拟机安装、创建、虚拟机的分区等等

+

Wine运行器是一个能让Linux用户更加方便地运行Windows应用的程序,内置了对Wine图形化的支持、各种Wine工具、自制的Wine程序打包器和运行库安装工具等。

+

它同时还内置了基于VirtualBox制作的、专供小白使用的Windows虚拟机安装工具,可以做到只需下载系统镜像并点击安装即可,无需考虑虚拟机的安装、创建、分区等操作。

本程序依照 GPLV3 协议开源

 
@@ -2119,7 +2121,8 @@ Qt 版本:{QtCore.qVersion()}
 

友谊链接

星火应用商店:https://spark-app.store/
 Deepin 官网:https://www.deepin.org
-Deepin 论坛:https://bbs.deepin.org
+Deepin 论坛:https://bbs.deepin.org +非官方论坛:https://gfdgdxi.flarum.cloud/

©2020~{time.strftime("%Y")} gfdgd xi、为什么您不喜欢熊出没和阿布呢

''' title = "Wine 运行器 {}".format(version) @@ -2428,17 +2431,26 @@ wineOption.addAction(w10) wineOption.addSeparator() wineOption.addAction(w11) wineOption.addSeparator() -wm3 = wineOption.addMenu(QtCore.QCoreApplication.translate("U", "启用/禁用 opengl")) +optionCheckDemo = wineOption.addMenu(QtCore.QCoreApplication.translate("U", "组件功能测试")) +vbDemo = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "测试 Visual Basic 6 程序")) +netDemo = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "测试 .net framework 程序")) +netIEDemo = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "测试 .net framework + Internet Explorer 程序")) +optionCheckDemo.addAction(vbDemo) +optionCheckDemo.addAction(netDemo) +optionCheckDemo.addAction(netIEDemo) +wineOption.addSeparator() +wm3 = wineOption.addMenu(QtCore.QCoreApplication.translate("U", "启用/禁用功能")) +ed1 = wm3.addMenu(QtCore.QCoreApplication.translate("U", "启用/禁用 opengl")) wm3_1 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "开启 opengl")) wm3_2 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "禁用 opengl")) -wm3.addAction(wm3_1) -wm3.addAction(wm3_2) -wm4 = wineOption.addMenu(QtCore.QCoreApplication.translate("U", "安装/卸载 winbind")) +ed1.addAction(wm3_1) +ed1.addAction(wm3_2) +ed2 = wm3.addMenu(QtCore.QCoreApplication.translate("U", "安装/卸载 winbind")) wm4_1 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "安装 winbind")) wm4_2 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "卸载 winbind")) -wm4.addAction(wm4_1) -wm4.addAction(wm4_2) -dxvkMenu = wineOption.addMenu(QtCore.QCoreApplication.translate("U", "安装/卸载 DXVK")) +ed2.addAction(wm4_1) +ed2.addAction(wm4_2) +dxvkMenu = wm3.addMenu(QtCore.QCoreApplication.translate("U", "安装/卸载 DXVK")) installDxvk = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "安装 DXVK")) uninstallDxvk = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "卸载 DXVK")) dxvkMenu.addAction(installDxvk) @@ -2514,6 +2526,9 @@ disbledHttpProxy.triggered.connect(DisbledHttpProxy) saveDllOver.triggered.connect(SaveDllList) addDllOver.triggered.connect(AddReg) editDllOver.triggered.connect(lambda: RunWineProgram("winecfg")) +vbDemo.triggered.connect(lambda: RunWineProgram(f"{programPath}/Test/vb.exe")) +netDemo.triggered.connect(lambda: RunWineProgram(f"{programPath}/Test/net.exe")) +netIEDemo.triggered.connect(lambda: RunWineProgram(f"{programPath}/Test/netandie.exe")) virtualMachine = menu.addMenu(QtCore.QCoreApplication.translate("U", "虚拟机(&V)")) v1 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "使用 Virtualbox 虚拟机运行 Windows 应用")) diff --git a/deb/opt/apps/deepin-wine-runner/information.json b/deb/opt/apps/deepin-wine-runner/information.json index 84a457d..01f11de 100755 --- a/deb/opt/apps/deepin-wine-runner/information.json +++ b/deb/opt/apps/deepin-wine-runner/information.json @@ -1,6 +1,8 @@ { "Version": "2.5.0", "Thank": [ + "感谢 @雁舞白沙 优化了程序文案", + "感谢 @豪 制作的非官方论坛 https://gfdgdxi.flarum.cloud/", "感谢 @185******67 反馈的 2.4.0 无法打开 Visual Basic 组件安装工具的问题", "感谢 @shenmo 提供的 在打包器的 postrm 脚本添加 kill.sh、追加参数改为 --uri xxxxxxx、独立生成容器 7z 文件的功能", "感谢 @a2035274 @虚幻的早晨 https://bbs.deepin.org/post/238301", diff --git a/deb/opt/apps/deepin-wine-runner/package-script.zip b/deb/opt/apps/deepin-wine-runner/package-script.zip index 155d479..ba95108 100755 Binary files a/deb/opt/apps/deepin-wine-runner/package-script.zip and b/deb/opt/apps/deepin-wine-runner/package-script.zip differ diff --git a/deepin-wine-packager.py b/deepin-wine-packager.py index 07a19e1..e6101be 100755 --- a/deepin-wine-packager.py +++ b/deepin-wine-packager.py @@ -1393,7 +1393,9 @@ def ChangeArchCombobox(): option = True if debArch.currentIndex() != 0: option = False - #chooseWineHelperValue.setEnabled(option) + chooseWineHelperValue.setEnabled(option) + if not option: + chooseWineHelperValue.setChecked(False) wineVersion.setEnabled(option) useInstallWineArch.setEnabled(option) #rmBash.setEnabled(option) diff --git a/information.json b/information.json index 84a457d..01f11de 100755 --- a/information.json +++ b/information.json @@ -1,6 +1,8 @@ { "Version": "2.5.0", "Thank": [ + "感谢 @雁舞白沙 优化了程序文案", + "感谢 @豪 制作的非官方论坛 https://gfdgdxi.flarum.cloud/", "感谢 @185******67 反馈的 2.4.0 无法打开 Visual Basic 组件安装工具的问题", "感谢 @shenmo 提供的 在打包器的 postrm 脚本添加 kill.sh、追加参数改为 --uri xxxxxxx、独立生成容器 7z 文件的功能", "感谢 @a2035274 @虚幻的早晨 https://bbs.deepin.org/post/238301", diff --git a/mainwindow.py b/mainwindow.py index 4cbdc92..a7412d7 100755 --- a/mainwindow.py +++ b/mainwindow.py @@ -2053,38 +2053,39 @@ version = information["Version"] goodRunSystem = "常见 Linux 发行版" thankText = "" tips = '''

提示:

-1、使用终端运行该程序,可以看到 wine 以及程序本身的提示和报错; -2、wine 32 位和 64 位的容器互不兼容; -3、所有的 wine 和 winetricks 均需要自行安装(可以从 菜单栏=>程序 里面进行安装) +1、使用终端运行该程序,可以看到 wine 以及程序本身的提示和报错; +2、wine 32 位和 64 位的容器互不兼容; +3、所有的 wine 和 winetricks 均需要自行安装(可以从 菜单栏=>程序 里面进行安装); 4、本程序支持带参数运行 wine 程序(之前版本也可以),只需要按以下格式即可: exe路径\' 参数 \' -即可(单引号需要输入) -5、wine 容器如果没有指定,则会默认为 ~/.wine -6、如果可执行文件比较大的话,会出现点击“获取该程序运行情况”出现假死的情况,因为正在后台读取 SHA1,只需要等一下即可(读取速度依照您电脑处理速度、读写速度、可执行文件大小等有关) -7、对于非 X86 的用户来说,请不要使用本程序自带的 Wine 安装程序和 Windows 虚拟机安装功能(检测到为非 X86 架构会自动禁用) -8、如果非 X86 的用户的 UOS 专业版用户想要使用的话,只需要在应用商店安装一个 Wine 版本微信即可在本程序选择正确的 Wine 运行程序 +即可(单引号需要输入); +5、wine 容器如果没有指定,则会默认为 ~/.wine; +6、如果可执行文件比较大的话,会出现点击“获取该程序运行情况”出现假死的情况,因为正在后台读取 SHA1,只需要等一下即可(读取速度依照您电脑处理速度、读写速度、可执行文件大小等有关); +7、对于非 X86 的用户来说,请不要使用本程序自带的 Wine 安装程序和 Windows 虚拟机安装功能(检测到为非 X86 架构会自动禁用); +8、如果非 X86 的用户的 UOS 专业版用户想要使用的话,只需要在应用商店安装一个 Wine 版本微信即可在本程序选择正确的 Wine 运行程序; 9、在使用 linglong 包的 Wine 应用时,必须安装至少一个 linglong 的使用 Wine 软件包才会出现该选项, 而程序识别到的 Wine 是按 linglong 的使用 Wine 软件包名的字母排序第一个的 Wine,且生成的容器不在用户目录下,而是在容器的用户目录下(~/.deepinwine、/tmp、桌面、下载、文档等被映射的目录除外), -同理需要运行的 EXE 也必须在被映射的目录内 +同理需要运行的 EXE 也必须在被映射的目录内; 10、如果是使用 Deepin 23 的 Wine 安装脚本,请切记——安装过程会临时添加 Deepin 20 的 apt 源,不要中断安装以及 千万不要中断后不删除源的情况下 apt upgrade !!!中断后只需重新打开脚本输入 repair 或者随意安装一个 Wine(会自动执行恢复操作)即可 -以及此脚本安装的 Wine 无法保证 100% 能使用,以及副作用是会提示 +以及此脚本安装的 Wine 无法保证 100% 能使用,以及副作用是会提示; N: 鉴于仓库 'https://community-packages.deepin.com/beige beige InRelease' 不支持 'i386' 体系结构,跳过配置文件 'main/binary-i386/Packages' 的获取。''' -updateThingsString = '''※1、容器自动配置脚本 GUI 查看介绍使用 QWebEngineWidget,支持图片(非强制依赖,只做推荐) -※2、不基于生态适配活动脚本打包器跟进 arm 架构 2022年11月11日的 Wine 微信打包方式 -※3、支持多图标的程序打包 -※4、修复了安装更多 Wine 换源换了个寂寞的问题 -※5、修复安装更多 Wine 重新安装后列表丢失的问题 -※6、新增了对 Deepin 23 Alpha 优化的 Wine 安装器 -※7、新增 Dll 名称查询功能,可以查询对应 Dll 的作用 -※8、支持静态获取可执行文件可以调用的 Dll 并提供解决方案 -※9、支持移除指定的 .desktop 快捷方式 -10、修复了不基于生态适配活动脚本打包器在选择 arm 打包架构下容器自动删除脚本取消勾选无用的问题 -11、优化文案 +updateThingsString = '''※1、容器自动配置脚本 GUI 查看介绍使用 QWebEngineWidget,支持图片(非强制依赖,只做推荐); +※2、不基于生态适配活动脚本打包器跟进 arm 架构 2022年11月11日的 Wine 微信打包方式; +※3、支持多图标的程序打包; +※4、修复了安装更多 Wine 换源换了个寂寞的问题; +※5、修复安装更多 Wine 重新安装后列表丢失的问题; +※6、新增了对 Deepin 23 Alpha 优化的 Wine 安装器; +※7、新增 Dll 名称查询功能,可以查询对应 Dll 的作用; +※8、支持静态获取可执行文件可以调用的 Dll 并提供解决方案; +※9、支持移除指定的 .desktop 快捷方式; +10、修复了不基于生态适配活动脚本打包器在选择 arm 打包架构下容器自动删除脚本取消勾选无用的问题; +11、优化文案、新增友链; +12、提供了部分组件的测试功能。 ''' for i in information["Thank"]: thankText += f"{i}\n" -updateTime = "2022年11月22日" +updateTime = "2022年11月23日" about = f'''