# -*- coding: utf-8 -*- # Form implementation generated from reading ui file '/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/mainwindow.ui' # # Created by: PyQt5 UI code generator 5.15.6 # # WARNING: Any manual changes made to this file will be lost when pyuic5 is # run again. Do not edit this file unless you know what you are doing. from PyQt5 import QtCore, QtGui, QtWidgets class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(1058, 512) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/icon.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) MainWindow.setWindowIcon(icon) self.centralWidget = QtWidgets.QWidget(MainWindow) self.centralWidget.setObjectName("centralWidget") self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralWidget) self.horizontalLayout.setContentsMargins(11, 11, 11, 11) self.horizontalLayout.setSpacing(6) self.horizontalLayout.setObjectName("horizontalLayout") self.tabWidget = QtWidgets.QTabWidget(self.centralWidget) self.tabWidget.setTabShape(QtWidgets.QTabWidget.Rounded) self.tabWidget.setObjectName("tabWidget") self.tab = QtWidgets.QWidget() self.tab.setObjectName("tab") self.verticalLayout = QtWidgets.QVBoxLayout(self.tab) self.verticalLayout.setContentsMargins(11, 11, 11, 11) self.verticalLayout.setSpacing(6) self.verticalLayout.setObjectName("verticalLayout") self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setSpacing(6) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.label = QtWidgets.QLabel(self.tab) self.label.setObjectName("label") self.horizontalLayout_2.addWidget(self.label) self.isoPath = QtWidgets.QLineEdit(self.tab) self.isoPath.setObjectName("isoPath") self.horizontalLayout_2.addWidget(self.isoPath) self.browser = QtWidgets.QPushButton(self.tab) self.browser.setObjectName("browser") self.horizontalLayout_2.addWidget(self.browser) self.verticalLayout.addLayout(self.horizontalLayout_2) self.horizontalLayout_3 = QtWidgets.QHBoxLayout() self.horizontalLayout_3.setSpacing(6) self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.label_2 = QtWidgets.QLabel(self.tab) self.label_2.setObjectName("label_2") self.horizontalLayout_3.addWidget(self.label_2) self.systemVersion = QtWidgets.QComboBox(self.tab) self.systemVersion.setObjectName("systemVersion") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.systemVersion.addItem("") self.horizontalLayout_3.addWidget(self.systemVersion) self.horizontalLayout_3.setStretch(1, 1) self.verticalLayout.addLayout(self.horizontalLayout_3) self.horizontalLayout_7 = QtWidgets.QHBoxLayout() self.horizontalLayout_7.setSpacing(6) self.horizontalLayout_7.setObjectName("horizontalLayout_7") self.label_4 = QtWidgets.QLabel(self.tab) self.label_4.setObjectName("label_4") self.horizontalLayout_7.addWidget(self.label_4) self.vmChooser = QtWidgets.QComboBox(self.tab) self.vmChooser.setDuplicatesEnabled(False) self.vmChooser.setObjectName("vmChooser") self.vmChooser.addItem("") self.vmChooser.addItem("") self.horizontalLayout_7.addWidget(self.vmChooser) self.horizontalLayout_7.setStretch(1, 1) self.verticalLayout.addLayout(self.horizontalLayout_7) self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setSpacing(6) self.horizontalLayout_4.setObjectName("horizontalLayout_4") spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout_4.addItem(spacerItem) self.getQemu = QtWidgets.QPushButton(self.tab) self.getQemu.setObjectName("getQemu") self.horizontalLayout_4.addWidget(self.getQemu) self.kvmTest = QtWidgets.QPushButton(self.tab) self.kvmTest.setObjectName("kvmTest") self.horizontalLayout_4.addWidget(self.kvmTest) self.qemuSetting = QtWidgets.QPushButton(self.tab) self.qemuSetting.setObjectName("qemuSetting") self.horizontalLayout_4.addWidget(self.qemuSetting) self.addQemuDiskButton = QtWidgets.QPushButton(self.tab) self.addQemuDiskButton.setObjectName("addQemuDiskButton") self.horizontalLayout_4.addWidget(self.addQemuDiskButton) self.saveQemuDiskButton = QtWidgets.QPushButton(self.tab) self.saveQemuDiskButton.setObjectName("saveQemuDiskButton") self.horizontalLayout_4.addWidget(self.saveQemuDiskButton) self.delQemuDiskButton = QtWidgets.QPushButton(self.tab) self.delQemuDiskButton.setObjectName("delQemuDiskButton") self.horizontalLayout_4.addWidget(self.delQemuDiskButton) self.getvbox = QtWidgets.QPushButton(self.tab) self.getvbox.setObjectName("getvbox") self.horizontalLayout_4.addWidget(self.getvbox) self.install = QtWidgets.QPushButton(self.tab) self.install.setObjectName("install") self.horizontalLayout_4.addWidget(self.install) self.verticalLayout.addLayout(self.horizontalLayout_4) self.textBrowser_3 = QtWidgets.QTextBrowser(self.tab) self.textBrowser_3.setOpenLinks(False) self.textBrowser_3.setObjectName("textBrowser_3") self.verticalLayout.addWidget(self.textBrowser_3) self.tabWidget.addTab(self.tab, "") self.tab_3 = QtWidgets.QWidget() self.tab_3.setObjectName("tab_3") self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.tab_3) self.horizontalLayout_5.setContentsMargins(11, 11, 11, 11) self.horizontalLayout_5.setSpacing(6) self.horizontalLayout_5.setObjectName("horizontalLayout_5") self.textBrowser = QtWidgets.QTextBrowser(self.tab_3) self.textBrowser.setUndoRedoEnabled(False) self.textBrowser.setOpenLinks(False) self.textBrowser.setObjectName("textBrowser") self.horizontalLayout_5.addWidget(self.textBrowser) self.tabWidget.addTab(self.tab_3, "") self.tab_2 = QtWidgets.QWidget() sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.tab_2.sizePolicy().hasHeightForWidth()) self.tab_2.setSizePolicy(sizePolicy) self.tab_2.setObjectName("tab_2") self.horizontalLayout_6 = QtWidgets.QHBoxLayout(self.tab_2) self.horizontalLayout_6.setContentsMargins(11, 11, 11, 11) self.horizontalLayout_6.setSpacing(6) self.horizontalLayout_6.setObjectName("horizontalLayout_6") self.verticalLayout_3 = QtWidgets.QVBoxLayout() self.verticalLayout_3.setSpacing(6) self.verticalLayout_3.setObjectName("verticalLayout_3") self.label_3 = QtWidgets.QLabel(self.tab_2) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth()) self.label_3.setSizePolicy(sizePolicy) self.label_3.setMinimumSize(QtCore.QSize(200, 200)) self.label_3.setMaximumSize(QtCore.QSize(200, 200)) self.label_3.setStyleSheet("border-image: url(:/deepin-wine-runner.png);") self.label_3.setText("") self.label_3.setObjectName("label_3") self.verticalLayout_3.addWidget(self.label_3) spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.verticalLayout_3.addItem(spacerItem1) self.horizontalLayout_6.addLayout(self.verticalLayout_3) self.textBrowser_2 = QtWidgets.QTextBrowser(self.tab_2) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.textBrowser_2.sizePolicy().hasHeightForWidth()) self.textBrowser_2.setSizePolicy(sizePolicy) self.textBrowser_2.setOpenLinks(False) self.textBrowser_2.setObjectName("textBrowser_2") self.horizontalLayout_6.addWidget(self.textBrowser_2) self.tabWidget.addTab(self.tab_2, "") self.horizontalLayout.addWidget(self.tabWidget) MainWindow.setCentralWidget(self.centralWidget) self.CPUValue = QtWidgets.QStatusBar(MainWindow) self.CPUValue.setStatusTip("") self.CPUValue.setObjectName("CPUValue") MainWindow.setStatusBar(self.CPUValue) self.menuBar = QtWidgets.QMenuBar(MainWindow) self.menuBar.setGeometry(QtCore.QRect(0, 0, 1058, 36)) self.menuBar.setObjectName("menuBar") self.menuVM = QtWidgets.QMenu(self.menuBar) self.menuVM.setObjectName("menuVM") MainWindow.setMenuBar(self.menuBar) self.action = QtWidgets.QAction(MainWindow) self.action.setObjectName("action") self.action_2 = QtWidgets.QAction(MainWindow) self.action_2.setObjectName("action_2") self.addQemuDisk = QtWidgets.QAction(MainWindow) self.addQemuDisk.setObjectName("addQemuDisk") self.delQemuDisk = QtWidgets.QAction(MainWindow) self.delQemuDisk.setObjectName("delQemuDisk") self.actionVMInstallLog = QtWidgets.QAction(MainWindow) self.actionVMInstallLog.setObjectName("actionVMInstallLog") self.actionVMRunlLog = QtWidgets.QAction(MainWindow) self.actionVMRunlLog.setObjectName("actionVMRunlLog") self.actionVMTest = QtWidgets.QAction(MainWindow) self.actionVMTest.setObjectName("actionVMTest") self.menuVM.addAction(self.actionVMInstallLog) self.menuVM.addAction(self.actionVMRunlLog) self.menuVM.addSeparator() self.menuVM.addAction(self.actionVMTest) self.menuBar.addAction(self.menuVM.menuAction()) self.retranslateUi(MainWindow) self.tabWidget.setCurrentIndex(0) self.vmChooser.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "Wine 运行器虚拟机安装工具")) self.label.setText(_translate("MainWindow", "镜像路径:")) self.isoPath.setPlaceholderText(_translate("MainWindow", "请选择系统镜像")) self.browser.setText(_translate("MainWindow", "浏览……")) self.label_2.setText(_translate("MainWindow", "系统版本:")) self.systemVersion.setCurrentText(_translate("MainWindow", "Windows 7 32 位(支持自动安装)")) self.systemVersion.setItemText(0, _translate("MainWindow", "Windows 7 32 位(支持自动安装)")) self.systemVersion.setItemText(1, _translate("MainWindow", "Windows 7 64 位(支持自动安装)")) self.systemVersion.setItemText(2, _translate("MainWindow", "其它 Windows 系统(不支持自动安装,传统启动,推荐 Windows 7 及以下)")) self.systemVersion.setItemText(3, _translate("MainWindow", "其他 Windows 系统(不支持自动安装,UEFI 启动,推荐 Windows 8 及以上)")) self.systemVersion.setItemText(4, _translate("MainWindow", "安装 WIndows 11(不支持自动安装)")) self.systemVersion.setItemText(5, _translate("MainWindow", "安装其他 Windows XP(支持自动安装,只支持 VirtualBox)")) self.systemVersion.setItemText(6, _translate("MainWindow", "安装其他 Windows (支持自动安装,传统启动,只支持 VirtualBox)")) self.systemVersion.setItemText(7, _translate("MainWindow", "安装其他 Windows(支持自动安装,UEFI 启动,只支持 VirtualBox)")) self.systemVersion.setItemText(8, _translate("MainWindow", "安装 arm32 系统(只支持 Qemu)")) self.systemVersion.setItemText(9, _translate("MainWindow", "安装 arm64 系统(只支持 Qemu)")) self.label_4.setText(_translate("MainWindow", "虚拟机(建议默认):")) self.vmChooser.setCurrentText(_translate("MainWindow", "qemu/kvm")) self.vmChooser.setItemText(0, _translate("MainWindow", "qemu/kvm")) self.vmChooser.setItemText(1, _translate("MainWindow", "VirtualBox")) self.getQemu.setText(_translate("MainWindow", "安装 Qemu")) self.kvmTest.setText(_translate("MainWindow", "kvm 测试")) self.qemuSetting.setText(_translate("MainWindow", "Qemu虚拟机设置")) self.addQemuDiskButton.setText(_translate("MainWindow", "添加/覆盖Qemu磁盘")) self.saveQemuDiskButton.setText(_translate("MainWindow", "导出Qemu磁盘")) self.delQemuDiskButton.setText(_translate("MainWindow", "移除Qemu磁盘")) self.getvbox.setText(_translate("MainWindow", "获取VirtualBox")) self.install.setText(_translate("MainWindow", "安装")) self.textBrowser_3.setHtml(_translate("MainWindow", "\n" "
\n" "UOS 3a4000 用户在使用 Qemu 时可能会出现虚拟机无法正常开机的问题,需要安装/降级到以下链接的版本:
\n" "蓝奏云:https://gfdgdxi.lanzoue.com/b01rk9wza 密码:6wvf
\n" "诚通网盘:http://ctfile.gfdgdxi.top/d/31540479-58662214-c46520?p=2061 (访问密码: 2061)
\n" "注:Qemu 跨架构效率较低,如无特殊情况不建议跨架构/不开硬件加速(如 kvm)运行 Qemu
\n" "如何安装系统?使用迅雷或者网盘下载以下任意一个链接的 ISO 镜像然后在上面选择即可:
\n" "123 网盘链接:https://www.123pan.com/s/pDSKVv-oypWv
\n" "迅雷网盘:https://pan.xunlei.com/s/VNKMz3wgbYHg6JIh50ZKIc7pA1?pwd=35e5 提取码:35e5
\n" "百度网盘:https://pan.baidu.com/s/19WbvinITCQJFZpAdZutrjg?pwd=me4y 提取码: me4y
\n" "诚通网盘:http://ctfile.gfdgdxi.top/d/31540479-58662220-3590cf?p=2061 (访问密码: 2061)
\n" "(如果下载这个,系统版本选第一项,一般推荐这个)ed2k://|file|cn_windows_7_ultimate_with_sp1_x86_dvd_u_677486.iso|2653276160|7503E4B9B8738DFCB95872445C72AEFB|/
\n" "(如果下载这个,系统版本选第二项)ed2k://|file|cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso|3420557312|B58548681854236C7939003B583A8078|/
\n" "常用 Windows 软件:
\n" "百度网盘:链接: https://pan.baidu.com/s/1D1NSy7k7XBnOZL_tNTnG6g?pwd=7s2p 提取码: 7s2p
\n" "诚通网盘:http://ctfile.gfdgdxi.top/d/31540479-58659214-0732a8?p=2061 (访问密码: 2061)
\n" "123网盘:https://www.123pan.com/s/pDSKVv-uCBWv.html
\n" "给小白的一段话
\n" "其实本质上跑完安装程序就没有然后了,顶多如果想要运行舒服一点点,可以安装加强功能,直接拉到最底下看就可以了,只限使用 VirtualBox
\n" "如果你是用非 X86 PC,那暂时只能使用 qemu(没 kvm),且跨架构的性能损失很大,推荐使用 Windows XP 而非 Windows 7
\n" "如果爱折腾的话,下面的都看看也无所谓的,想看往下翻就可以了
\n" "(这里的帮助更新可能不会那么及时,更详细/新的帮助可以看:https://gitee.com/gfdgd-xi/deep-wine-runner/wikis 或 https://gitee.com/gfdgd-xi/wine-runner-wiki)
\n" "(如果鼠标被锁定到里面了按下键盘右边的“Ctrl”键就可以了,qemu则是 Ctrl+Alt+G )
\n" "VirtualBox 可以安装增强功能以优化体验,安装方法往下翻即可查询
\n" "Qemu 可以安装 Virtio 以优化体验,下载链接:https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/
\n" "安装是否需要人工进行操作?
\n" "如果您下载的镜像本程序支持,则大部分不用,已经尽量省去了让新手头疼的虚拟机程序安装,创建、设置虚拟机,虚拟磁盘分区,寻找原版镜像文件等内容
\n" "\n" "但有些设置依旧需要人工自行设置,例如安装界面密钥的输入、系统的激活(涉及版权问题,不会考虑省略)、增强功能的安装、需要使用的软件等等
\n" "\n" "\n" "什么样的镜像本程序(可能)不支持自动安装?
\n" "非 Windows 7 镜像可能不支持自动安装(纯的 Windows 7 企业版镜像可能不支持自动安装),不保证系统能自动安装成功,例如 Windows XP、Windows 10、Deepin、Ubuntu 等等
\n" "默认的虚拟机设置不习惯怎么改?
\n" "1、打开启动器,打开 Oracle VM VirtualBox 程序
\n" "2、选择名字为“Windows”的虚拟机,然后在右边点击设置
\n" "\n" "3、在这里修改即可
\n" "\n" "安装加强功能有什么好处?(只限使用 VirtualBox)
\n" "1、支持鼠标自由从虚拟机和实体机切换
\n" "2、支持虚拟机根据窗口大小自动设置分辨率
\n" "3、支持文件共享、剪切板共享、文件拖放
\n" "4、支持无缝模式
\n" "\n" "如何安装加强功能?
\n" "1、点击“设备”=》“加强功能”
\n" "\n" "2、打开“计算机”,找到名为“VirtualBox Guest Additions”的光盘,双击进入,然后双击打开名为“VBoxWindowsAdditions”的程序
\n" "\n" "3、在弹出的界面点击“是”
\n" "\n" "4、一直点“Next”
\n" "\n" "\n" "5、全部选择,然后点击“Install”进行安装
\n" "\n" "6、等待安装完毕后,选择“Reboot now”然后点击“Finish”重启此虚拟机即可安装成功(选择“Reboot now”并点“Finish”会自动重新启动)
\n" "")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_3), _translate("MainWindow", "安装/使用帮助")) self.textBrowser_2.setHtml(_translate("MainWindow", "\n" "\n" "此为 wine 运行器附属组件(虽然违背了“Wine Is Not An Emulator”<Wine 不是一个模拟器>的原意),旨在能更加完美、简单的运行 Windows 应用
\n" "本程序基于 C++ Qt、Python 和 Virtualbox 制作,通过运行安装 Windows 操作系统的虚拟机实现在 Linux 运行 Windows exe 程序的功能。
\n" "基于 GPL V3 协议开源
\n" "项目地址:
\n" "Gitee:https://gitee.com/gfdgd-xi/deep-wine-runner
\n" "Github:https://github.com/gfdgd-xi/deep-wine-runner
\n" "此组件也有非常大的缺点,就是相比于 Wine,会需要占用大量的空间、安装需要大量的时间、某些情况下需要相比于 Wine 需要消耗更多的系统资源,但可以更加完美、流畅的运行 Windows 应用,会尽量减少因为缺少或未实现导致的 Windows exe 程序运行异常
\n" "该组件制作者:gfdgd xi
\n" "