20240810105500

This commit is contained in:
zhaoyafan 2024-08-10 10:56:18 +08:00
parent c51920d73f
commit 8a9f786107
1 changed files with 18 additions and 7 deletions

25
main.py
View File

@ -4,8 +4,9 @@ import sys
import ctypes
import logging
import time
import hashlib
import tempfile
import warnings
import threading
import subprocess
import win32com.client
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QDialog, QLabel, QComboBox, QCheckBox, QLineEdit, QAction, QMenu, QMessageBox, QPushButton, QTableWidget, QVBoxLayout, QHBoxLayout, QTableWidgetItem
@ -611,7 +612,7 @@ class MainWindow(QMainWindow):
def __init__(self, logger: Logger):
super().__init__()
self.app_name = '蓝牙音频连接'
self.app_version = ('1.0.1', '20240808', 'zhaoyafan', 'zhaoyafan@foxmail.com', 'https://www.fanscloud.net/')
self.app_version = ('1.0.2', '20240810', 'zhaoyafan', 'zhaoyafan@foxmail.com', 'https://www.fanscloud.net/')
self.app_text = {'search': '正在搜索', 'connecting': '连接中...'}
self.logger = logger
self.bluesoleil = None
@ -694,7 +695,14 @@ class MainWindow(QMainWindow):
self.init_bluesoleil()
def init_bluesoleil(self):
self.bluesoleil = BtSdk()
try:
self.bluesoleil = BtSdk()
except FileNotFoundError:
QMessageBox.critical(self, '错误', '关键程序“千月(bluesoleil)”未安装,请安装后再试')
self.close()
except Exception:
QMessageBox.critical(self, '警告', '蓝牙尚未启动')
self.close()
def restartServActionFunction(self):
if (os.path.exists('C:\\Program Files (x86)\\IVT Corporation\\BlueSoleil\\BtTray.exe')) == 1:
@ -743,8 +751,11 @@ class MainWindow(QMainWindow):
f.write(b'\x22\x00')
def closeEvent(self, event):
self.bluesoleil.done()
self.bluesoleil = None
try:
self.bluesoleil.done()
self.bluesoleil = None
except:
pass
event.accept()
def open_manu_search_dialog(self):
@ -946,7 +957,7 @@ class ManuWindow(QDialog):
if __name__ == '__main__':
if (os.path.basename(__file__).lower().endswith('.int')) == 1:
QCoreApplication.addLibraryPath(os.path.abspath(os.path.join(os.path.dirname(__file__), 'site-packages/PyQt5/Qt5/plugins')))
f_lock = open(file='%s.lock' % (os.path.splitext(__file__)[0],), mode='w', encoding='utf-8')
f_lock = open(file=os.path.abspath(os.path.join(tempfile.gettempdir(), '%s.lock' % hashlib.md5(bytes(__file__, encoding='utf-8')).hexdigest()[:16])), mode='w', encoding='utf-8')
if (not flock(f_lock, LOCK_EX | LOCK_NB)) == 1:
app = QApplication(sys.argv)
msg = QMessageBox()
@ -958,5 +969,5 @@ if __name__ == '__main__':
app.exit(1)
sys.exit(1)
app = QApplication(sys.argv)
window_main = MainWindow(logger=Logger(name='main', fh=LoggerFileHandler(log_file='%s.log' % (os.path.splitext(__file__)[0],), mode='w'), ch=LoggerConsHandler()))
window_main = MainWindow(logger=Logger(name='main', fh=None, ch=LoggerConsHandler()))
sys.exit(app.exec_())