mirror of
https://gitee.com/gfdgd-xi/deep-wine-runner
synced 2025-12-18 04:51:37 +08:00
测试完成
This commit is contained in:
@@ -1016,7 +1016,7 @@ class GetDllFromWindowsISO:
|
||||
traceback.print_exc()
|
||||
QtWidgets.QMessageBox.critical(GetDllFromWindowsISO.message, "错误", traceback.format_exc())
|
||||
|
||||
|
||||
|
||||
def MountDisk():
|
||||
if not os.path.exists(GetDllFromWindowsISO.isoPath.currentText()):
|
||||
QtWidgets.QMessageBox.critical(GetDllFromWindowsISO.message, "错误", "您选择的 ISO 镜像文件不存在")
|
||||
@@ -1024,7 +1024,7 @@ class GetDllFromWindowsISO:
|
||||
if os.path.exists("/tmp/wine-runner-getdll"):
|
||||
try:
|
||||
os.rmdir("/tmp/wine-runner-getdll")
|
||||
os.rmdir("/tmp/wine-runner-getdll-wim")
|
||||
os.system("rm -rf /tmp/wine-runner-getdll-wim")
|
||||
except:
|
||||
# 如果无法删除可能是挂载了文件
|
||||
os.system("wimunmount /tmp/wine-runner-getdll-wim")
|
||||
@@ -1042,6 +1042,10 @@ class GetDllFromWindowsISO:
|
||||
findList = []
|
||||
# 判断是新版的 Windows ISO(Windows Vista 及以上版本)
|
||||
if os.path.exists("/tmp/wine-runner-getdll/sources/install.wim"):
|
||||
# 如果没有安装 wimtools 的话
|
||||
if os.system("which wimmount") != 0:
|
||||
QtWidgets.QMessageBox.critical(GetDllFromWindowsISO.message, "错误", f"镜像内容读取/挂载失败,因为没有安装 wimtools 以至无法读取")
|
||||
return
|
||||
# 是新版,挂载 wim
|
||||
# 需要让用户选择挂载内容
|
||||
QtWidgets.QInputDialog.getMultiLineText(GetDllFromWindowsISO.message, "提示", "挂载文件需要用户记住并在下一个对话框输入 Index 以挂载正确的镜像,按下下方任意按钮即可继续", subprocess.getoutput("wiminfo '/tmp/wine-runner-getdll/sources/install.wim'"))
|
||||
@@ -1339,6 +1343,7 @@ class ProgramSetting():
|
||||
autoWine = None
|
||||
runtimeCache = None
|
||||
buildByBottleName = None
|
||||
autoPath = None
|
||||
def ShowWindow():
|
||||
ProgramSetting.message = QtWidgets.QMainWindow()
|
||||
widget = QtWidgets.QWidget()
|
||||
@@ -1354,6 +1359,7 @@ class ProgramSetting():
|
||||
widgetLayout.addWidget(QtWidgets.QLabel(QtCore.QCoreApplication.translate("U", "忽略未安装的 Wine:")), 8, 0, 1, 1)
|
||||
widgetLayout.addWidget(QtWidgets.QLabel(QtCore.QCoreApplication.translate("U", "下载缓存:")), 9, 0, 1, 1)
|
||||
widgetLayout.addWidget(QtWidgets.QLabel(QtCore.QCoreApplication.translate("U", "图标生成:")), 10, 0, 1, 1)
|
||||
widgetLayout.addWidget(QtWidgets.QLabel(QtCore.QCoreApplication.translate("U", "自动根据EXE名称生成路径:")), 11, 0, 1, 1)
|
||||
ProgramSetting.wineBottonA = QtWidgets.QComboBox()
|
||||
ProgramSetting.wineDebug = QtWidgets.QCheckBox(QtCore.QCoreApplication.translate("U", "开启 DEBUG 输出"))
|
||||
ProgramSetting.defultWine = QtWidgets.QComboBox()
|
||||
@@ -1373,6 +1379,7 @@ class ProgramSetting():
|
||||
ProgramSetting.autoWine = QtWidgets.QCheckBox(QtCore.QCoreApplication.translate("U", "不显示未检测到的 Wine"))
|
||||
ProgramSetting.runtimeCache = QtWidgets.QCheckBox(QtCore.QCoreApplication.translate("U", "开启下载缓存"))
|
||||
ProgramSetting.buildByBottleName = QtWidgets.QCheckBox(QtCore.QCoreApplication.translate("U", "本软件构建的图标后面添加容器名"))
|
||||
ProgramSetting.autoPath = QtWidgets.QCheckBox(QtCore.QCoreApplication.translate("U", "自动根据文件名生成容器路径(开启后必须通过修改默认wine容器路径才可指定其它路径,重启后生效)"))
|
||||
ProgramSetting.wineBottonA.addItems(["Auto", "win32", "win64"])
|
||||
ProgramSetting.wineBottonA.setCurrentText(setting["Architecture"])
|
||||
ProgramSetting.wineDebug.setChecked(setting["Debug"])
|
||||
@@ -1385,6 +1392,7 @@ class ProgramSetting():
|
||||
ProgramSetting.autoWine.setChecked(setting["AutoWine"])
|
||||
ProgramSetting.runtimeCache.setChecked(setting["RuntimeCache"])
|
||||
ProgramSetting.buildByBottleName.setChecked(setting["BuildByBottleName"])
|
||||
ProgramSetting.autoPath.setChecked(setting["AutoPath"])
|
||||
widgetLayout.addWidget(ProgramSetting.wineBottonA, 0, 1, 1, 1)
|
||||
widgetLayout.addWidget(ProgramSetting.wineDebug, 1, 1, 1, 1)
|
||||
widgetLayout.addWidget(ProgramSetting.defultWine, 2, 1, 1, 1)
|
||||
@@ -1398,7 +1406,8 @@ class ProgramSetting():
|
||||
widgetLayout.addWidget(ProgramSetting.autoWine, 8, 1, 1, 1)
|
||||
widgetLayout.addWidget(ProgramSetting.runtimeCache, 9, 1, 1, 1)
|
||||
widgetLayout.addWidget(ProgramSetting.buildByBottleName, 10, 1, 1, 1)
|
||||
widgetLayout.addWidget(save, 11, 2, 1, 1)
|
||||
widgetLayout.addWidget(ProgramSetting.autoPath, 11, 1, 1, 2)
|
||||
widgetLayout.addWidget(save, 12, 2, 1, 1)
|
||||
widget.setLayout(widgetLayout)
|
||||
ProgramSetting.message.setCentralWidget(widget)
|
||||
ProgramSetting.message.setWindowIcon(QtGui.QIcon(iconPath))
|
||||
@@ -1427,6 +1436,7 @@ class ProgramSetting():
|
||||
setting["AutoWine"] = ProgramSetting.autoWine.isChecked()
|
||||
setting["RuntimeCache"] = ProgramSetting.runtimeCache.isChecked()
|
||||
setting["BuildByBottleName"] = ProgramSetting.buildByBottleName.isChecked()
|
||||
setting["AutoPath"] = ProgramSetting.autoPath.isChecked()
|
||||
try:
|
||||
write_txt(get_home() + "/.config/deepin-wine-runner/WineSetting.json", json.dumps(setting))
|
||||
except:
|
||||
@@ -1533,6 +1543,9 @@ class ValueCheck():
|
||||
traceback.print_exc()
|
||||
QtWidgets.QMessageBox.critical(window, "错误", traceback.format_exc())
|
||||
|
||||
def ChangePath():
|
||||
e1.setCurrentText(f'{setting["DefultBotton"]}/{os.path.splitext(os.path.basename(e2.currentText()))[0]}')
|
||||
|
||||
###########################
|
||||
# 加载配置
|
||||
###########################
|
||||
@@ -1550,7 +1563,8 @@ defultProgramList = {
|
||||
"AutoWine": True,
|
||||
"RuntimeCache": True,
|
||||
"MustRead": False,
|
||||
"BuildByBottleName": False
|
||||
"BuildByBottleName": False,
|
||||
"AutoPath": False
|
||||
}
|
||||
if not os.path.exists(get_home() + "/.config/deepin-wine-runner"): # 如果没有配置文件夹
|
||||
os.mkdir(get_home() + "/.config/deepin-wine-runner") # 创建配置文件夹
|
||||
@@ -1905,6 +1919,8 @@ button1.clicked.connect(liulanbutton)
|
||||
leftUpLayout.addWidget(button1, 3, 1, 1, 1)
|
||||
leftUpLayout.addWidget(QtWidgets.QLabel(QtCore.QCoreApplication.translate("U", "请选择要执行的程序:")), 4, 0, 1, 1)
|
||||
e2 = QtWidgets.QComboBox()
|
||||
if setting["AutoPath"]:
|
||||
e2.editTextChanged.connect(ChangePath)
|
||||
e2.setEditable(True)
|
||||
leftUpLayout.addWidget(e2, 5, 0, 1, 1)
|
||||
button2 = QtWidgets.QPushButton(QtCore.QCoreApplication.translate("U", "浏览"))
|
||||
|
||||
Reference in New Issue
Block a user