Я использую Quantal 32-bit с установленным Wine 1.4.1. У меня есть конкретный файл .exe старой игры (Aliens vs Predator Gold Edition), который работает без сбоев, но он отказывается запускаться, если я не нахожусь в его точном каталоге.
Например, если в терминале I перейти в каталог игры и запустить wine avp.exe
, он запускается без проблем. Он также запускается нормально, когда я щелкаю правой кнопкой мыши и выбираю запуск с Wine Windows Program Loader.
Однако, если я нахожусь в другом каталоге в терминале, скажем, мой домашний каталог, и я пытаюсь запустить его, вызывая его абсолютный путь к файлу, то есть
wine /home/USER/.wine/drive_c/AVP/avp.exe
Я понятия не имею, почему вызов этой программы из другого каталога будет иметь какое-то значение, тем более что я успешно выполнил другие exe-файлы таким образом. Кто-нибудь сталкивался с этим раньше?
Программа, вероятно, использует dll, которые она может найти только при запуске из своего каталога, где они находятся. Это распространенная ошибка, которую делают программисты Windows.
У меня такая же проблема недавно.
Вот как я это исправлю.
avp_wine
в каталоге /usr/bin
И это будет ваш контент в вашем /usr/bin/avp_wine
#!/bin/bash
cd /home/USER/.wine/drive_c/AVP/
wine avp.exe
И в вашем /usr/applications/avp.desktop
измените значение Exec на avp_wine