From 971bcd0f5ac37f02ef4151d288f684335389ab38 Mon Sep 17 00:00:00 2001 From: Mikhail Tergoev Date: Tue, 21 Oct 2025 11:30:48 +0300 Subject: [PATCH] wine_run: added automatic detection of .reg and .dll --- winehelper | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/winehelper b/winehelper index 15d55d7..bd3f2ea 100755 --- a/winehelper +++ b/winehelper @@ -1387,6 +1387,20 @@ prepair_wine () { [[ "$MANGOHUD" == 1 ]] && MANGOHUD_RUN="mangohud" } +wine_regfile () { + print_info "Запускаем команду: $WINELOADER $@" + "$WINELOADER" "$@" && print_ok "Выполнено." || fatal "Не выполнено: $WINELOADER $@" + wait_wineserver + + if [[ "$WINEARCH" == "win64" ]] \ + && [[ -f "${WINELOADER}64" ]] + then + print_info "Запускаем команду: ${WINELOADER}64 $@" + "${WINELOADER}64" "$@" && print_ok "Выполнено." || fatal "Не выполнено: ${WINELOADER}64 $@" + wait_wineserver + fi +} + wine_run () { local wh_add_args win_file_exec win_file_path win_file_name @@ -1395,6 +1409,9 @@ wine_run () { win_file_name="$win_file_exec" win_file_path="$DRIVE_C" wh_add_args="" + elif [[ $1 =~ \.dll$ ]] ; then + wine_regfile regsvr32 /s "$@" + return 0 elif [[ -f "$1" ]] ; then win_file_exec="$(readlink -f "$1")" win_file_path="$(dirname "$win_file_exec")" @@ -1404,6 +1421,7 @@ wine_run () { *.exe) wh_add_args="$WINE_WIN_START" ;; *.msi) wh_add_args="msiexec /i" ;; *.bat|*.cmd) wh_add_args="" ;; + *.reg) wine_regfile regedit "$@" ; return 0 ;; *) fatal "Не удалось запустить файл $1. Проверьте расширение файла." ;; esac