Автоматизация запуска приложений из под wine (как открыть определенные типы файлов, виндосовскими программами....)

Вопросы настройки, запуск любых Windows-программ, кроме игр

Модератор: Модераторы разделов

Ответить
Аватара пользователя
DjSpike
Сообщения: 2265
Статус: в поисках истины
ОС: Lubuntu 12.04

Автоматизация запуска приложений из под wine

Сообщение DjSpike »

Ситуация: Есть программа которая запускается под wine ( wDBFview.exe). Как сделать чтобы файлы с расширение dbf, автоматически открывались с помощью этой программы... Или чтобы в Krusader можно было или по F3 или по F4 открывать..
Пробовал вот так:
env WINEPREFIX="/home/spike/.wine" wine "z:\mnt\work\install\windows\Other\Просмотр Баз Данных\wDBFview\wDBFview.exe"

В итоге когда щелкаешь на файле просто запускается программа но файл в ней не открывается, приходтся в ручную открывать....
AvReg - По для организации Видеонаблюдения на Linux.
ДЭНСИ:КАССА - Рабочее место кассира под Linux.
Терминальные решения под Linux
Консультации по установке 1с+PostgreSQL+Ubuntu.
Спасибо сказали:
KernelPanic
Бывший модератор
Сообщения: 2060
Статус: Brain Атаке
ОС: Debian squeeze/sid/exp

Re: Автоматизация запуска приложений из под wine

Сообщение KernelPanic »

Извиняюсь за поднятие давней темы, но думаю, будет интересно многим.
Ответа на такой же вопрос не нашел, увы, пришлось самому решать.
Итак, дано:
1) установлен wine;
2) установлен MS Office;
3) есть документ формата *.doc (не важно, где он находится).

Задача минимум: сделать так, чтоб хотя бы при клике правой кнопкой мыши на документе и выборе "открыть с помощью" с последующим выбором из списка программ Word'а он открыл-таки этот документ.

Решается туго, но полностью:
1) Зайти в редактирование меню KDE (я для кедов рассмотрю)
2) Найти пункт запуска Word'а. В строке "команда" имеется команда запуска типа такой:

Код: Выделить всё

env WINEPREFIX="/home/user/.wine" wine "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE"

3) Тупая дописка здесь в конце параметра %u ничего не дает, так как файл, передаваемый через переменную %u содержит *nix-путь, который Word не поймет.
4) Есть у wine такая утилита winepath, так вот имеется у нее опция конвертации в виндоуз-путь (-w).
5) Пробуем применить утилиту таким образом:

Код: Выделить всё

env WINEPREFIX="/home/user/.wine" wine "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE" "`winepath -w '%u'`"

Внимательно, дописанный кусок в обратных одинарных кавычках (на русской буковке ё)
Сохраняем, пробуем через правую кнопку мыши на файле и выборе этого приложения. Должно работать на ура :)
6) Остался маленький косячок, связанный с простым вызовом Word'а через главное меню, строку которого мы меняли. А именно, при простом запуске Word пытается открыть файл, косяк лечится следующим образом, опять редактируем строку меню для запуска Word'a следующим образом:

Код: Выделить всё

env WINEPREFIX="/home/user/.wine" wine "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE" "`if [ 'x%u' != 'x' ]; then winepath -w '%u'; fi`"

Как видно, просто добавили условие, проверяющее параметр %u на пустую строку.
Все, должно работать при любом типе запуска.
Аналогично поступаем с другими виндоуз-приложениями :)
Спасибо сказали:
Ответить