wine_run: added automatic detection of .reg and .dll
This commit is contained in:
18
winehelper
18
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
|
||||
|
||||
|
Reference in New Issue
Block a user