Wine ошибка dde

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Use Dynamic Data Exchange with Wine

Hi, this is a crosspost from superuser.com, since I think this question fits here better and I did not find a rule forbidding it.

I have a very old Windows application that was written in Visual Basic 6.0 and performs communication via Dynamic Data Exchange (DDE) between the main application and a sub-application (second .exe) which is started by the main application.

I want to run this application with Wine. So far, I have installed wine and winetricks and have installed the VB6 dependencies via winetricks vb6run. Everything is running flawlessly except for when the DDE communication is attempted.

The main application is able to start the sub-application, but both application raise an error («Foreign application won’t perform DDE method or operation» for the main app).

I am using Manjaro Linux with wine-6.10.

How can I debug this problem and enable the applications to talk via DDE?

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Re: Use Dynamic Data Exchange with Wine

Post

by rfe » Mon Jul 12, 2021 2:39 pm

Thanks for the reply. Sadly, this is an unpublished application of a programmer that wishes to leave Windows behind. The console output is very brief.

I could take a look at the source code though, sorry for not mentioning that.

Is DDE something that usually works with Wine?

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Re: Use Dynamic Data Exchange with Wine

Post

by rfe » Tue Aug 10, 2021 6:21 am

Hi again,

I think I misunderstood something before, I now pasted the console output of wine here. As you can see, the only DDE related message is related to DdeUninitialize at the very bottom.

I also tried debugging the problem with a simpler example. For this purpose, I downloaded a DDE Sample from this VB forum thread. I can supply the two EXE files if someone wants that. The applications are able to communicate on a Windows PC, but unable to communicate via Wine. On Linux, the client application crashes with the message «Run-time error ‘-2147024882 (8007000e)’: Out of memory». The server application displays a LinkError. The full console outputs of the programs can be found here (client) and here (server). There are more DDE related messages in these logs.

I also tried to at least find the DLL which causes the problems to attempt to debug that, but I only found the «~/.wine/drive_c/windows/system/ddeml.dll» and renaming that to something else doesn’t change the behaviour at all, so I guess that isn’t it?

jkfloris

Level 12
Level 12
Posts: 2723
Joined: Thu Aug 14, 2014 10:10 am

Re: Use Dynamic Data Exchange with Wine

Post

by jkfloris » Fri Aug 13, 2021 3:51 pm

I can supply the two EXE files if someone wants that.

No idea if I can get the programs to work, but I want to try.

I also tried to at least find the DLL which causes the problems to attempt to debug that, but I only found the «~/.wine/drive_c/windows/system/ddeml.dll» and renaming that to something else doesn’t change the behaviour at all, so I guess that isn’t it?

If you don’t want to use a dll file, use:

Code: Select all

WINEDLLOVERRIDES=ddeml=d wine <program.exe>

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Re: Use Dynamic Data Exchange with Wine

Post

by rfe » Tue Aug 17, 2021 4:13 am

jkfloris wrote: ↑Fri Aug 13, 2021 3:51 pm

I can supply the two EXE files if someone wants that.

No idea if I can get the programs to work, but I want to try.

Thanks for the offer! I uploaded the two files here. I hope the choice of file sharer is okay. The link will stay active for 30 days. Keep in mind that I did not create the application and that the source can be found in my post above.

Возможности, предоставляемые Wine

Wine позволяет запускать 32- и 64-битные исполняемые файлы (PE executable), имеющие расширение .exe и предназначенные для выполнения в Windows-совместимом окружении. Wine предоставляет все необходимые для запуска программ динамические библиотеки (.dll-файлы), а также поддерживает установку и работу дополнительных компонент (библиотек), требуемых программами. Такая установка может выполняться через инструмент установки сторонних дополнений winetricks или же непосредственно инсталлятором программы.

В частности, поддерживаются такие интерфейсы как

  • GDI;
  • GDIPlus;
  • Print;
  • CryptoAPI (частично);
  • Internet Explorer (частично);
  • DirectX;
  • видео- и аудио-кодеки;
  • .NET (в реализации Mono);
  • кодирование и раскодирование изображений в форматах JPEG, PNG, GIF, TIFF, BMP;
  • OpenGL;
  • ODBC;
  • LDAP (частично);

В частности, поддерживается установка и работа следующих сторонних дополнений:

  • библиотек времени выполнения (runtime) для программ, собранных в средах разработки Visual C++ версий от 2003 до 2019 включительно, а также версии 6;
  • Microsoft Data Access Components (MDAC 2.7, MDAC 2.8)
  • MS Jet 4.0
  • Microsoft .NET версий от 1.1 до 4.8 включительно;
  • .NET Core версий 2.2 и 3.0;
  • Microsoft Visual FoxPro версий от 6.0 до 9.0 включительно.

Версии Wine

В дистрибутивах ALT Linux представлены две версии Wine:

  • wine — сборка Wine, основанного на коде проекта Wine-staging и доработанного силами ALT Linux Team и компании Etersoft. Именно эта сборка является основной для дистрибутивов ALT Linux, так как имеет лучшую функциональность и поддерживается разработчиками.
  • wine-vanilla — сборка оригинального Wine от WineHQ без каких-либо изменений.

У компании Etersoft есть ещё одна — коммерческая — версия: WINE@Etersoft уже c «закрытыми» патчами, которая также совместима с дистрибутивами ALT Linux (впрочем, как и с другими дистрибутивами Linux).

Обновления Wine

Работа Wine в 64-битных дистрибутивах

В 64-битных дистрибутивах пакет wine, в отличии от 64-битного Windows, поддерживает только 64-битные Windows приложения.

Для понимания того, какое это приложение, можно пояснить, что в 64-битном Windows 64-битные приложения ставятся в каталог «Program Files», а 32-битные в «Program Files (x86)»

Как известно, большинство Windows-приложений на сегодня — 32-битные.

Поэтому в большинстве случаев для использования Wine в 64-битной ОС надо ставить не пакет wine, а пакет i586-wine (или i586-wine-vanilla); при установленном eepm может помочь команда epm play i586-wine

i586-wine и i586-wine-vanilla — это перепакованный 32-битный Wine для работы в 64-битной среде по технологии arepo.

Для его установки необходимо убедиться, что подключён репозиторий для псевдоархитектуры x86_64-i586.

Например, для ветки p10 команда apt-repo, помимо других строчек, должна в своём выводе иметь следующую строчку (например, в /etc/apt/sources.list.d/alt.list):

rpm [p10] http://ftp.altlinux.org/pub/distributions/ALTLinux p10/branch/x86_64-i586 classic

А после этого установить из 32-битных пакетов, например:

apt-get install i586-wine

Работа с сетью

Установите i586-glibc-nss:

apt-get install i586-glibc-nss

Для доменных пользователей Active Directory, которые входят через sssd:

apt-get install i586-sssd-client

32-битные видеодрайверы

Установите i586-libwine-gl либо i586-libwine-vanilla-gl в зависимости от применяемого варианта wine, а также i586-libGL и i586-libGLU:

apt-get install -- $(rpm -qa --qf='%{NAME}' i586-libwine{,-vanilla})-gl
apt-get install i586-libGL i586-libGLU

и что-то вроде i586-xorg-dri-intel или i586-xorg-dri-radeon в зависимости от видеодрайвера, см. тж. ссылки ниже.

для работы в виртуалке может понадобится

i586-xorg-dri-swrast

Ассоциация файлов с родными приложениями Linux

Нужна для возможности открытия документов из приложений в Wine через нативные программы в Линуксе.

Для этого создайте файл /usr/local/bin/winenative со следующим содержимым:

#!/bin/sh
$1 "`wine winepath -u "$2"`"

Сделайте его исполняемым: chmod +x /usr/local/bin/winenative

Затем от пользователя запускаем редактор реестра: wine regedit. В HKEY_CLASSES_ROOT ищем ключ — pdffile для PDF-файлов, pngfile для PNG изображений и т.п., в нем будет shell > open. В open может быть ddeexec, который нужно удалить (если оставить, необходимая программа хоть и откроется, однако выскочит сообщение от Wine — Ошибка DDE.). Нам необходимо создать или изменить ключ command. Значение ключа выставляем:

"Z:usrlocalbinwinenative" xdg-open "%1"

Должно получиться так:

Pdf regedit.png

После этого настроенный тип файла будет открываться в программе по умолчанию в Линуксе.

Для настройки нестандартных для Linux файлов — например doc/docx — настройка немного отличается. Нужно полностью создать следующую цепочку:

HKEY_CLASSES_ROOTdocfileshellopencommand

с аналогичным значением: «Z:usrlocalbinwinenative» xdg-open «%1». После этого создать ветку HKEY_CLASSES_ROOTdoc со значением docfile

Полезные команды

wine cmd # Windows terminal / execute bat batch scripts, etc. (CLI)
wine control # Wines equivalent of the Windows Control panel (GUI)
wine eject # Eject a disc from the specified optical drive (CLI)
winepath # mangle Windows <-> Unix paths (CLI)
wine reg # registry editor (CLI)
wine taskmgr # same as Windows task manager utility (GUI)
wine uninstaller # global program installer / uninstaller (GUI)
wine winefile # alternative Wine file manager (GUI)
wine explorer # desktop (GUI)

Ссылки по теме

  • Установка WINE@Etersoft на 64-битные ОС
  • Несколько архитектур в одной ОС (Arepo/Biarch)
    • 32-битный OpenGL на 64-битной системе с драйвером Intel
    • 32-битный OpenGL на 64-битной системе с драйвером NVIDIA
  • Описание WINE@Etersoft
  • Краткий FAQ по Wine
  • Документация по Wine на русском языке
  • Наиболее полная документация по Wine (на английском языке)
  • Русский Wine (Русский Wiki по Wine)
  • Готовим Wine в домашних условиях
  • Практические вопросы > WINE
  • Практические вопросы > Бизнес и бухгалтерия под Линукс
  • Запуск программ
  • winetricks: wget, установка
  • Ассоциация файлов с родными приложениями Linux: [1], [2]
  • Q4Wine
  • опыт настройки одновременной работы WINE32 и WINE64 (с ручной установкой wine64 рядом с пакетным i586-wine)

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Use Dynamic Data Exchange with Wine

Hi, this is a crosspost from superuser.com, since I think this question fits here better and I did not find a rule forbidding it.

I have a very old Windows application that was written in Visual Basic 6.0 and performs communication via Dynamic Data Exchange (DDE) between the main application and a sub-application (second .exe) which is started by the main application.

I want to run this application with Wine. So far, I have installed wine and winetricks and have installed the VB6 dependencies via winetricks vb6run. Everything is running flawlessly except for when the DDE communication is attempted.

The main application is able to start the sub-application, but both application raise an error («Foreign application won’t perform DDE method or operation» for the main app).

I am using Manjaro Linux with wine-6.10.

How can I debug this problem and enable the applications to talk via DDE?

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Re: Use Dynamic Data Exchange with Wine

Post

by rfe » Mon Jul 12, 2021 2:39 pm

Thanks for the reply. Sadly, this is an unpublished application of a programmer that wishes to leave Windows behind. The console output is very brief.

I could take a look at the source code though, sorry for not mentioning that.

Is DDE something that usually works with Wine?

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Re: Use Dynamic Data Exchange with Wine

Post

by rfe » Tue Aug 10, 2021 6:21 am

Hi again,

I think I misunderstood something before, I now pasted the console output of wine here. As you can see, the only DDE related message is related to DdeUninitialize at the very bottom.

I also tried debugging the problem with a simpler example. For this purpose, I downloaded a DDE Sample from this VB forum thread. I can supply the two EXE files if someone wants that. The applications are able to communicate on a Windows PC, but unable to communicate via Wine. On Linux, the client application crashes with the message «Run-time error ‘-2147024882 (8007000e)’: Out of memory». The server application displays a LinkError. The full console outputs of the programs can be found here (client) and here (server). There are more DDE related messages in these logs.

I also tried to at least find the DLL which causes the problems to attempt to debug that, but I only found the «~/.wine/drive_c/windows/system/ddeml.dll» and renaming that to something else doesn’t change the behaviour at all, so I guess that isn’t it?

jkfloris

Level 12
Level 12
Posts: 2482
Joined: Thu Aug 14, 2014 10:10 am

Re: Use Dynamic Data Exchange with Wine

Post

by jkfloris » Fri Aug 13, 2021 3:51 pm

I can supply the two EXE files if someone wants that.

No idea if I can get the programs to work, but I want to try.

I also tried to at least find the DLL which causes the problems to attempt to debug that, but I only found the «~/.wine/drive_c/windows/system/ddeml.dll» and renaming that to something else doesn’t change the behaviour at all, so I guess that isn’t it?

If you don’t want to use a dll file, use:

Code: Select all

WINEDLLOVERRIDES=ddeml=d wine <program.exe>

rfe

Newbie
Newbie
Posts: 4
Joined: Sat Jul 10, 2021 10:13 am

Re: Use Dynamic Data Exchange with Wine

Post

by rfe » Tue Aug 17, 2021 4:13 am

jkfloris wrote: ↑Fri Aug 13, 2021 3:51 pm

I can supply the two EXE files if someone wants that.

No idea if I can get the programs to work, but I want to try.

Thanks for the offer! I uploaded the two files here. I hope the choice of file sharer is okay. The link will stay active for 30 days. Keep in mind that I did not create the application and that the source can be found in my post above.

Содержание

  • Причины возникновения ошибки
  • Решение проблемы
    • Способ 1: отключение игнорирования DDE
    • Способ 2: отключение режима совместимости
    • Способ 3: Очистка реестра
    • Способ 4: отключение аппаратного ускорения
    • Способ 5: отключение надстроек
    • Способ 6: сброс сопоставлений файлов
    • Способ 7: загрузка обновлений Windows и переустановка пакета Microsoft Office
  • Вопросы и ответы

Ошибка в Microsoft Excel

Несмотря на то, что, в целом, программа Microsoft Excel отличается довольно высоким уровнем стабильности работы, с этим приложением тоже иногда случаются проблемы. Одной из таких проблем является появление сообщения «Ошибка при направлении команды приложению». Оно возникает при попытке сохранить или открыть файл, а так же провести с ним некоторые другие действия. Давайте разберемся, чем вызвана данная проблема, и как её можно устранить.

Причины возникновения ошибки

Какие же основные причины вызывают данную ошибку? Можно выделить следующие:

  • Повреждение надстройки;
  • Попытка получить доступ к данным активного приложения;
  • Ошибки в системном реестре;
  • Повреждение программы Excel.

Решение проблемы

Пути устранения данной ошибки зависят от её причины. Но, так как в большинстве случаев, установить причину труднее, чем её ликвидировать, то более рациональным решением является методом проб попытаться найти верный способ действий из тех вариантов, которые представлены ниже.

Способ 1: отключение игнорирования DDE

Чаще всего, устранить ошибку при направлении команды удается путем отключения игнорирования DDE.

  1. Переходим во вкладку «Файл».
  2. Переход во вкладку Файл в Microsoft Excel

  3. Кликаем по пункту «Параметры».
  4. Переход в Параметры в Microsoft Excel

  5. В открывшемся окне параметров, переходим в подраздел «Дополнительно».
  6. Переход в раздел Дополнительно в Microsoft Excel

  7. Ищем блок настроек «Общие». Снимаем галочку около параметра «Игнорировать DDE-запросы от других приложений». Жмем на кнопку «OK».

Отключение игнорирования DDE в Microsoft Excel

После этого, в значительном числе случаев, проблема устраняется.

Способ 2: отключение режима совместимости

Ещё одной вероятной причиной, описанной выше проблемы, может быть включенный режим совместимости. Для того, чтобы отключить его, нужно последовательно проделать указанные ниже шаги.

  1. Переходим, с помощью проводника Windows, или любого файлового менеджера, в каталог размещения пакета программ Microsoft Office на компьютере. Путь к нему выглядит следующим образом: C:Program FilesMicrosoft OfficeOFFICE№. № — это номер офисного пакета. Например, папка, где хранятся программы Microsoft Office 2007, будет называться OFFICE12, Microsoft Office 2010 — OFFICE14, Microsoft Office 2013 — OFFICE15, и т.д.
  2. Путь к файлу Excel

  3. В папке OFFICE ищем файл Excel.exe. Кликаем по нему правой кнопкой мыши, и в появившемся контекстном меню выбираем пункт «Свойства».
  4. Переход в свойства в Microsoft Excel

  5. В открывшемся окне свойств Excel, переходим во вкладку «Совместимость».
  6. Переход во вкладку Совместимость в Microsoft Excel

  7. Если стоят флажки напротив пункта «Запустить программу в режиме совместимости», или «Выполнять эту программу от имени администратора», то снимаем их. Жмем на кнопку «OK».

Отключение запуска программы в режиме совместимости в Microsoft Excel

Lumpics.ru

Если галочки в соответствующих пунктах не установлены, то продолжаем искать источник проблемы в другом месте.

Способ 3: Очистка реестра

Одной из причин, которая может вызвать ошибку при направлении команды приложению в Excel, являются неполадки в реестре. Поэтому, нам его необходимо будет почистить. Перед тем, как приступать к дальнейшим действиям, для того чтобы подстраховать себя от возможных нежелательных последствий данной процедуры, настойчиво рекомендуем создать точку восстановления системы.

  1. Для того, чтобы вызвать окно «Выполнить», на клавиатуре вводим комбинацию клавиш Win+R. В открывшееся окно, вводим команду «RegEdit» без кавычек. Жмем на кнопку «OK».
  2. Переход в редактор реестра через окно Выполнить

  3. Открывается Редактор реестра. В левой части редактора расположено древо каталогов. Перемещаемся в каталог «CurrentVersion» по следующему пути: HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersion.
  4. Редактор реестра Windows

  5. Удаляем все папки, расположенные в директории «CurrentVersion». Для этого, кликаем по каждой папке правой кнопкой мыши, и в контекстном меню выбираем пункт «Удалить».
  6. Чистка реестра Windows

  7. После того, как удаление выполнено, перезагружаем компьютер и проверяем работоспособность программы Excel.

Способ 4: отключение аппаратного ускорения

Временным решением проблемы может стать отключение аппаратного ускорения в Excel.

  1. Переходим в уже знакомый нам по первому способу решения проблемы раздел «Параметры» во вкладке «Файл». Опять кликаем по пункту «Дополнительно».
  2. В открывшемся окне дополнительных параметров Excel, ищем блок настроек «Экран». Устанавливаем галочку около параметра «Отключить аппаратное ускорение обработки изображений». Кликаем по кнопке «OK».

Отключение аппаратного ускоренрия в Microsoft Excel

Способ 5: отключение надстроек

Как уже говорилось выше, одной из причин данной проблемы может быть неисправность какой-то надстройки. Поэтому, как временную меру, можно использовать отключение надстроек Excel.

  1. Опять переходим, находясь во вкладке «Файл», в раздел «Параметры», но на этот раз кликаем по пункту «Надстройки».
  2. Переход в надстройки в Microsoft Excel

  3. В самой нижней части окна, в выпадающем списке «Управление», выбираем пункт «Надстройки COM». Жмем на кнопку «Перейти».
  4. Переход в надстройки COM в Microsoft Excel

  5. Снимаем галочки со всех надстроек, которые указаны в списке. Жмем на кнопку «OK».
  6. Надстройки COM в Microsoft Excel

  7. Если после этого, проблема исчезла, то опять возвращаемся в окно надстроек COM. Устанавливаем галочку, и жмем на кнопку «OK». Проверяем, не вернулась ли проблема. Если все в порядке, то переходим к следующей надстройке, и т.д. Ту надстройку, на которой ошибка вернулась, отключаем, и больше не включаем. Все остальные надстройки можно включить.

Включение надстройки в Microsoft Excel

Если же после выключения всех надстроек проблема осталась, то это означает, что надстройки можно включить, а ошибку следует устранить другим способом.

Способ 6: сброс сопоставлений файлов

Для решения проблемы можно также попытаться сбросить сопоставления файлов.

  1. Через кнопку «Пуск» переходим в «Панель управления».
  2. Переход в Панель управления

  3. В Панели управления выбираем раздел «Программы».
  4. Переход в раздел Программы в Панели управления

  5. В открывшемся окне, переходим в подраздел «Программы по умолчанию».
  6. Переход в раздел Программы по умолчанию в Панели управления

  7. В окне настроек программ по умолчанию выбираем пункт «Сопоставление типов файлов и протоколов конкретных программ».
  8. Переход в раздел Сопоставления типа файлов в Панели управления

  9. В списке файлов выбираем расширение xlsx. Жмем на кнопку «Изменить программу».
  10. Переход к изменению программы

  11. В открывшемся списке рекомендуемых программ, выбираем Microsoft Excel. Делаем клик по кнопке «OK».
  12. Выбор программы

  13. В случае, если программы Excel нет в списке рекомендуемых программ, жмем на кнопку «Обзор…». Переходим по тому пути, о котором мы говорили, обсуждая способ решения проблемы отключением совместимости, и выбираем файл excel.exe.
  14. Переход к поиску программы

  15. Аналогичные действия проделываем и для расширения xls.

Способ 7: загрузка обновлений Windows и переустановка пакета Microsoft Office

Не в последнюю очередь виной появления данной ошибки в Excel может быть отсутствие важных обновлений Windows. Нужно проверить, все ли доступные обновления загружены, и в случае необходимости закачать недостающие.

  1. Опять открываем Панель управления. Переходим в раздел «Система и безопасность».
  2. Переход в систему и безопасность панели управления

  3. Кликаем по пункту «Центр обновления Windows».
  4. Переход в центр обновления Windows

  5. В случае, если в открывшемся окне присутствует сообщение о наличии обновлений, жмем на кнопку «Установить обновления».
  6. Переход к установке обновлений Windows

  7. Ждем, пока обновления будут установлены, и перезагружаем компьютер.

Если ни один из перечисленных методов не помог решить проблему, то возможно есть смысл задуматься о переустановке пакета программ Microsoft Office, а то и о переустановке операционной системы Windows в целом.

Как видим, довольно много возможных вариантов по устранению ошибки при направлении команды в программе Excel. Но, как правило, в каждом конкретном случае существует только одно верное решение. Поэтому, для того, чтобы ликвидировать эту проблему, придется методом проб использовать различные способы устранения ошибки, пока не будет найден единственно верный вариант.

О Wine

Wine — Wine Is Not Emulator — это свободная реализация среды ОС Windows поверх Linux (*UNIX) подсистем. Исполнение Windows-программ производится напрямую без какой-либо эмуляции и с минимальными накладными расходами.

  • Официальный сайт: winehq.org
  • Руководство пользователя: Wine_User’s_Guide
  • Отчёты пользователей с описанием опыта запуска тех или иных Windows-программ: appdb.winehq.org
  • Отчёты по запуску игр: protondb.com

Установка Wine

Wine состоит из нескольких основных и вспомогательных пакетов:

  • wine — среда Wine для выполнения 64-битных программ.
  • i586-wine — 32-х битная среда Wine.
  • wine-common — основные утилиты среды Wine (wineboot, winecfg, wineconsole, wineserver и т.д.).
  • wine-programs — вспомогательные программы (notepad, winefile, winemine).
  • wine-gecko — свободная реализация Internet Explorer на основе браузерного движка Gecko.
  • wine-mono — свободная реализация .NET Framework. Охватывает версии .NET, начиная с 1.x до 4.8.x.
  • winetricks — скрипт, предоставляющий различные опции по управлению средой Wine. Чаще всего используется для упрощения установки несвободных компонентов Windows и ряда Windows-программ от сторонних разработчиков.

Пример установки:

su -
apt-get update
epm play wine
exit

Благодаря скрипту epm, будут установлены все выше перечисленные пакеты, что оптимально в обычном пользовательском сценарии использования.
По завершению установки Wine готов к использованию.

Нюансы по i586-wine

На момент 2023 года поддержка выполнения 32-х битных программ в 64-х битной среде (Windows-on-Windows) находится на завершающем этапе разработки, но пока не используется в сборке для репозитория платформы. Поэтому всё ещё требуется отдельная установка 32-х битой среды Wine и попутного комплекта 32-х битных Linux-библиотек. Всё необходимое устанавливается при варианте установки посредством epm play wine.

В случае, когда пакет i586-wine отсутствует, при запуске 32-х битной программы будет выведено предупреждение и программа не заработает:
It looks like i586-wine is missing, you should install it. As root, please execute «apt-get install i586-wine»

Если пакет i586-wine был установлен после создания префикса, то префикс придётся удалить и пересоздать, иначе программы в нём перестанут работать и будет выведена ошибка:
wine: could not load kernel32.dll, status c0000135

Пример пересоздания префикса. Команды выполняются с правами обычного пользователя.
Полное удаление:

rm -r /home/$USER/.wine

Пересоздание префикса по стандартному пути /home/$USER/.wine:

wineboot -i

В случае, когда пакет i586-wine был установлен отдельно, могут не подтянуться некоторые 32-х битные библиотеки (в основном 32-х битные графические драйвера). Это легко исправить выполнением следующей команды:

epm play i586-fix

Основы по использованию Wine

Префиксы

Wine управляет префиксами (prefix), которые можно назвать отдельными экземплярами ОС Windows.

  • Стандартный префикс располагается в /home/$USER/.wine.
  • Префикс содержит в себе файлы реестра, каталоги, набор библиотек и программ, расположенных по той же структуре, как и в оригинальной Windows.

Altlinux wine basics a 10.png

    • dosdevices — в каталоге располагаются символические ссылки на каталоги, которые имитируют Windows-тома (диски). Тома обозначаются латинской буквой. К примеру, системный том Windows по умолчанию обозначается «C:».
    • drive_c — условный том «C:», в котором располагаются компоненты Windows.

Altlinux wine basics a 20.png

    • .update-timestamp — метка времени.
    • system.reg, user.reg и userdef.reg являются файлами реестра Windows.
  • По умолчанию создаются 64-х битные префиксы.
  • Компоненты эталонного префикса, из которого создаются все прочие создаваемые пользователем префиксы, находятся в /usr/lib64/wine/x86_64-windows/.
  • Wine-префиксы на жаргоне называют «бутылками».
Особенности и ограничения префиксов
  • Название префикса может быть любым, но для избежания затруднений следует придерживаться следующего:
    • Название префикса принято начинать с .wine. Пример: .wine_nalogul. В этом случае сразу понятно, что это Wine-префикс и что в него установлена программа Налогоплательщик ЮЛ.
    • Название должно содержать только латинские буквы и арабские цифры. Из символов можно применять знак точки, расположенный в самом начале названия, что означает скрытый каталог.
    • Название не должно содержать пробелы, иначе путь придётся экранировать кавычками, чтобы интерпретатор мог корректно его обработать. В противном случае можно легко столкнуться со следующей ошибкой: wine: invalid directory in WINEPREFIX: not an absolute path
  • Можно создавать префиксы в любых желаемых каталогах, принадлежащих пользователю.
  • Ограничений по количеству префиксов нет.
  • Категорически недопустимо создание префиксов с правами суперпользователя. Это крайне небезопасно — программы в префиксе потенциально получают доступ ко всем файлам системы. Так же обычный пользователь не сможет взаимодействовать с префиксом, так как им будет владеть суперпользователь.
  • Wine поддерживает одновременную работу множества Windows-программ, запущенных в одном или нескольких префиксах.
  • Не смотря на то, что Wine позволяет запускать исполняемые файлы Windows-программ из любого места пространства пользователя, правильнее это делать, разместив исполняемый файл внутри префикса. Оптимальным вариантом будет размещение в его корневом каталоге: home/$USER/.wine/drive_c. Такой подход связан с тем, что некоторые Windows-программы становятся неработоспособными, если расположены вне пространства префикса. Поэтому лучше предупредить возникновение подобных проблем и располагать исполняемые файлы внутри префикса.
  • Крайней нежелательно размещать префикс на разделе с файловой системой NTFS (основная файловая система OC Windows). Данная файловая система не поддерживает систему прав и атрибутов Linux, что приведёт к проблемам с запуском программ.
  • НЕДОПУСТИМО устанавливать в префикс Windows-драйвера для видеокарт, переферийных устройств, звуковых карт и подобного оборудования. Потенциально это может привести к сбою устройства, а в случае таких устройств, как мышь и клавиатура — полной неработоспособности.
  • Wine-префикс не предоставляет существенной изоляции Windows-процессов от пространства Linux-пользователя, поэтому не стоит пытаться запускать вредоносные программы для Windows, так как потенциально они способны нанести вред Linux-системе. К примеру, запущенный в префиксе вшифровальщик может зашифровать не только префикс, но и выйти за его пределы, зашифровав все каталоги и файлы, принадлежащие Linux-пользователю, так как все процессы, запущенные в префиксе, выполняются с правами пользователя.
  • Настоятельно не рекомендуется устанавливать всё в один префикс, оптимальнее создавать новый под каждую программу. Это особенно критично, если для работы той или иной программы требуется установить несвободный Windows-компонент. В таком случае может получиться так, что компонент, улучшающий работоспособность одной программы, будет приводить к сбоям других программ, что сильно усложнит отладку и выяснение причин сбоев. В свою очередь, использование отдельных префиксов для каждой программы, требующей установку несвободных Windows-компонентов, позволит полностью избежать подобных проблем.
  • Префиксы можно свободно перемещать и копировать, что удобно для создания резервных копий подготовленных под ту или иную задачу экземпляров.
Создание префиксов

Как было ранее отмечено, можно создавать собственные префиксы и не ограничиваться стандартным /home/$USER/.wine. Пример создания нового префикса (выполнять от обычного пользователя):

WINEPREFIX="/home/$USER/.wine_new" wineboot -i

Пояснения:

  • WINEPREFIX — это переменная окружения, которой нужно передать путь до каталога, в котором размещается префикс. В примере был передан путь до каталога wine_new причём он не обязательно должен существовать заранее.
  • wineboot -i — утилита отвечает за создание префикса, подготовку его к работе, имитацию перезагрузки и выключения ОС Windows. Ключ «-i» инициирует создание префикса. Примечание: префикс так же будет автоматически создан при попытке его обновления (wineboot -u), конфигурирования (winecfg) и прочих действий.

По умолчанию создаются 64-х битные префиксы, причём в них могут выполняться и 32-х битные программы. Но бывают случаи, когда требуется «чистый» 32-битный префикс. Его можно создать следующим образом:

WINEARCH=win32 WINEPREFIX="/home/$USER/.wine32_new" wineboot -i

Пояснения:

  • WINEARCH — с помощью этой переменной окружения можно управлять разрядностью создаваемых префиксов. При передаче значения «win32» будет создан 32-х битный префикс.

Примечание: У ранее созданного префикса нельзя поменять разрядность.

Запуск программ

Примечание: Прямой запуск «.exe» в Альт отключено в целях безопасности. Если прямой запуск необходим, потребуется вручную настроить выполнение MIME-типа «.exe» с помощью Wine.

Алгоритм действий для запуска той или иной Windows-программы:

  • Разместить исполняемый файл в корне префикса (./drive_c/программа.exe).
    • Запустить: wine /home/$USER/.wine/drive_c/программа.exe
  • Если не запускается, ознакомиться с историями успешного запуска на appdb.winehq.org и на altlinux.org.
  • С помощью winetricks установить необходимые проприетарные Windows-компоненты (С++ redistributable, .NET Framework, Microsoft Media Foundation и т.д.).

Запуск на примере клиента Steam с созданием отдельного префикса с названием .wine_steam. Команды выполняются с правами обычного пользователя. Создание префикса:

 WINEPREFIX=/home/$USER/.wine_steam wineboot -i

Поместить в префикс ранее загруженный установочный файл SteamSetup.exe:

mv /home/$USER/Downloads/SteamSetup.exe /home/$USER/.wine_steam/drive_c/

Запустить исполняемый файл с указанием абсолютного пути:

WINEPREFIX=/home/$USER/.wine_steam wine /home/$USER/.wine_steam/drive_c/SteamSetup.exe

Альтернативный вариант. Wine позволяет использовать имитацию Windows-путей, где точкой отсчёта является том «C:» — корень Wine-префикса ./drive_c. Пример:

WINEPREFIX=/home/$USER/.wine_steam wine 'C:/SteamSetup.exe'

»Примечание: Путь в стиле DOS-Windows следует экранировать кавычками.

Результат:

Altlinux wine basics b 10.png

После установки будет создана кнопка запуска Steam. В ней автоматически прописывается команда на запуск установленной программы из конкретного префикса, что облегчает последующий запуск. Пример команды из кнопки запуска:

env WINEPREFIX="/home/$USER/.wine_steam" wine C:\\users\\Public\\Desktop\\Steam.lnk

Видно, что запуск производится из нужного префикса и с Windows-ярлыка Steam.lnk.
Можно создавать собственные кнопки запуска, чтобы каждый раз не набивать (или копировать откуда-то) команду на запуск той или иной Windows-программы.

Подобным образом производится запуск любых программ с исполняемым файлом .exe.

Запуск bat-файлов — «батников»

Ранее для запуска необходимо было задействовать start, но с выходом Wine 8.0 эта опция стала применяться автоматически. Теперь достаточно запускать в обычном режиме:

WINEPREFIX=/home/$USER/.wine wine 'C:/script.bat'

Альтернативный устаревший вариант:

WINEPREFIX=/home/$USER/.wine wine start 'C:/script.bat'
Установка программы из установочного пакета msi

Ранее запуск таких пакетов отличался от запуска .exe, но ныне, начиная с Wine 8.0, запуск производится без задействования дополнительных опций.

Пример установки программы Налогоплательщик ЮЛ (версия 4.81) с созданием префикса с названием wine32nalogul Команды выполняются с правами обычного пользователя. Для этой программы желательно использовать 32-х битный префикс, причём это становится необходимым, если планируется использовать печать с двумерным штрих-кодом PDF-417. Создание 32-х битного префикса:

WINEARCH=win32 WINEPREFIX=/home/$USER/.wine32nalogul wineboot -i

Поместить в префикс ранее загруженный установочный файл nalogul481.msi

mv /home/$USER/Downloads/nalogul481.msi /home/$USER/.wine32nalogul/drive_c/

Запустить установочный пакет msi с указанием пути в стиле DOS-Windows:

WINEPREFIX=/home/$USER/.wine32nalogul wine 'C:/nalogul481.msi'

Альтернативный устаревший вариант с задействованием msiexec:

WINEPREFIX=/home/$USER/.wine32nalogul wine msiexec /i 'C:/nalogul481.msi'

Ещё один вариант — с задействованием start:

WINEPREFIX=/home/$USER/.wine32nalogul wine start 'C:/nalogul481.msi'

Результат:

Altlinux wine basics c 10.png

Использование winetricks для установки Windows-компонентов

В предыдущем разделе был рассмотрен запуск установщика «Налогоплательщик ЮЛ», но для полноценной работы программы, в связи с её специфической реализацией, (на момент 2023 года) требуются проприетарные Windows-компоненты:

  • jet40
  • msxml3
  • msxml4
  • msxml6
  • gdiplus
  • corefonts

Windows-компоненты удобнее всего устанавливать с помощью winetricks, который устанавливается вместе с прочими Wine-пакетами при установке посредством epm play wine.

За раз можно установить несколько Windows-компонентов, перечислив их через пробел. Пример установки с помощью winetricks:

WINEPREFIX=/home/$USER/.wine32nalogul winetricks -q jet40 msxml3 msxml4 msxml6 gdiplus corefonts

Пояснения:

  • -q — «тихий» режим установки. При его использовании пропускаются диалоги «мастера установки», что избавляет от рутины. В данном случае установка может занять довольно длительное время — до пары десятков минут.
  • Все перечисленные Windows-компоненты будут загружены из интернета в автоматическом режиме. Установочные файлы компонентов разместятся в home/$USER/.cache/winetricks После установки их можно удалить.

Налогоплательщик ЮЛ относится к программам, которые не могут запуститься без задействования start /unix, имитирующего файловые ассоциации Windows Explorer (файловый менеджер ОС Windows) и устраняющего проблемы с интерпретацией UNIX-путей. Команда на запуск выглядит подобным образом:

WINEPREFIX=/home/$USER/.wine32nalogul wine start /unix 'C:/Налогоплательщик ЮЛ/INPUTDOC/inputdoc.exe'

Пояснения:

  • В связи с тем, что в пути до исполняемого файла программы есть пробел, путь необходимо экранировать кавычками — ‘C:/Налогоплательщик ЮЛ/INPUTDOC/inputdoc.exe’.
  • Из-за необходимости использования start /unix потребуется отредактировать команду в кнопке запуска:

Altlinux wine basics c 20.png

  • Из-за наличия пробела в пути, там же в настройках кнопки запуска, необходимо экранировать кавычками путь в строке «Рабочий каталог».

Результат запуска «Налогоплательщик ЮЛ»:

Altlinux wine basics c 30.png

Прямое указание рабочего каталога

Существуют программы, которым необходимо напрямую указывать рабочий каталог (working directory), иначе они не смогут найти все необходимые для запуска ресурсы, так как те находятся в каталоге уровнем выше, в то время как поиск ресурсов производится сначала в каталоге с исполняемым файлом, после в его подкаталогах рекурсивно в глубину, а затем в C:windows. Следовательно, такие программы окажутся неработоспособными при прямом запуске. В этом случае потребуется вручную указать рабочий каталог — отправную точку для рекурсивного поиска всех нужных программе ресурсов.

Это можно осуществить двумя способами: создать кнопку запуска и указать в ней путь до рабочего каталога или прямо указать в команде на запуск. На примере игры STALKER Clear Sky рассмотрим второй способ.

Вводная:

  • Создан префикс с названием .wine64clearsky
  • Путь установки игры в префиксе: C:/Program Files (x86)/STALKER Clear Sky
  • Исполняемый файл игры xrEngine.exe находится в каталоге ./STALKER Clear Sky/bin.
  • Ресурсы игры находятся в каталогах:
    • ./STALKER Clear Sky/levels
    • ./STALKER Clear Sky/Localization
    • ./STALKER Clear Sky/patches
    • ./STALKER Clear Sky/resources

Отправная точка для успешного поиска ресурсов находится уровнем выше (каталог ./STALKER Clear Sky/, чем расположение исполняемого файла (./STALKER Clear Sky/bin/xrEngine.exe), тем самым при прямом выполнении игра не найдёт ресурсы:

Altlinux wine basics clearsky.png

Это решается следующим образом:

WINEPREFIX=/home/$USER/.wine64clearsky wine start /d 'C:/Program Files (x86)/STALKER Clear Sky/' ./bin/xrEngine.exe

Пояснения:

  • start /d — с опцией /d по указанному пути обозначается рабочий каталог, который станет отправной точкой в рекурсивном поиске ресурсов для запуска программы.
  • С тем учётом, что рабочий каталог указан, можно указать относительный путь до исполняемого файла. В данном случае ./bin/xrEngine.exe.

Благодаря этому, программа сможет найти все необходимые для запуска ресурсы.

Установка, запуск и удаление программ в графическом режиме

winefile — файловый менеджер Wine с графическим интерфейсом, схожий по функционалу с Windows Explorer (Проводник Windows). С его помощью можно осуществлять различные операции над файлами и каталогами в префиксе, включая запуск Windows-программ.

Пример запуска файлового менеджера для префикса с названием .wine32nalogul:

WINEPREFIX=/home/$USER/.wine32nalogul wine winefile

Altlinux wine basics winefile.png

Запуск Windows-программ осуществляется двойным щелчком по исполняемому файлу или ярлыку (.lnk):

Altlinux wine basics winefile exec.png

В целом логика управления во многом аналогична типичному файловому менеджеру Linux. Стоит отметить, что файлы, удалённые через файловый менеджер Wine, окажутся в обычной системной корзине (trash:///).

Установленные в префикс программы можно удалить в графическом режиме через «Панель управления» и «Установка/удаление программ»:

Altlinux wine basics winefile control.png

В открывшемся окне из списка выбрать ранее установленную программу и нажать кнопку «Удалить»:

Altlinux wine basics control.png

Альтернативным способом открытия «Установка/удаление программ» (uninstaller) является прямой запуск. Пример:

WINEPREFIX=/home/$USER/.wine32nalogul wine uninstaller
Принудительное завершение работы сбойных программ

Бывают случаи, когда работу сбойной программы довольно неудобно завершать штатными средствами Linux, особенно в случаях, когда программа приводит к зависанию завершения работы процессов префикса: services.exe, winedevice.exe, plugplay.exe и т.д. Принудительно завершить работу всех программ в префиксе можно следующим образом:

WINEPREFIX=/home/$USER/.wine wineboot -k

Альтернативный вариант с тем же эффектом:

WINEPREFIX=/home/$USER/.wine wineserver -k

Выполнение этих команд является эквивалентом нажатия кнопки Reset, при этом будет «принудительно перезагружен» только указанный префикс, а не вся система.

Более мягким вариантом, а так же удобным способом ознакомиться со всеми активными процессами префикса, является использование штатной программы taskmgr — «Диспетчер задач». Пример запуска для префикса с названием .wine32nalogul:

WINEPREFIX=/home/$USER/.wine32nalogul wine taskmgr

Демонстрация содержимого вкладок (объединены в одну картинку):

Altlinux wine basics taskmgr.png

Удаление префиксов

Самым удобным способом является удаление посредством winetricks:

WINEPREFIX=/путь/до/префикса winetricks annihilate

В этом случае будут удалены:

  • Каталог префикса вместе со всем содержимым.
  • Кнопки запуска и миниатюры для программ, установленных в удаляемый префикс.

Тем самым не остаётся никаких остаточных файлов.

Если по какой-то причине префикс был удалён вручную, останутся некоторые файлы, которые придётся зачистить так же вручную.
Место хранения кнопок запуска:

~/.local/share/applications/wine/

Место хранения миниатюр, включая тех программ, что установлены в Wine:

~/.local/share/icons/hicolor/

Так же можно удалить ненужные Windows-установщики, загруженные winetricks при установке Windows-компонентов в префикс:

~/.cache/winetricks/

Возможности, предоставляемые Wine

Wine позволяет запускать 32- и 64-битные исполняемые файлы (PE executable), имеющие расширение .exe и предназначенные для выполнения в Windows-совместимом окружении. Wine предоставляет все необходимые для запуска программ динамические библиотеки (.dll-файлы), а также поддерживает установку и работу дополнительных компонент (библиотек), требуемых программами. Такая установка может выполняться через инструмент установки сторонних дополнений winetricks или же непосредственно инсталлятором программы.

В частности, поддерживаются такие интерфейсы как

  • GDI;
  • GDIPlus;
  • Print;
  • CryptoAPI (частично);
  • Internet Explorer (частично);
  • DirectX;
  • видео- и аудио-кодеки;
  • .NET (в реализации Mono);
  • кодирование и раскодирование изображений в форматах JPEG, PNG, GIF, TIFF, BMP;
  • OpenGL;
  • ODBC;
  • LDAP (частично);

В частности, поддерживается установка и работа следующих сторонних дополнений:

  • библиотек времени выполнения (runtime) для программ, собранных в средах разработки Visual C++ версий от 2003 до 2019 включительно, а также версии 6;
  • Microsoft Data Access Components (MDAC 2.7, MDAC 2.8)
  • MS Jet 4.0
  • Microsoft .NET версий от 1.1 до 4.8 включительно;
  • .NET Core версий 2.2 и 3.0;
  • Microsoft Visual FoxPro версий от 6.0 до 9.0 включительно.

Реестр в Wine

Каждый Wine-префикс имеет собственный экземпляр реестра Windows. Основные особенности:

  • Реестр префикса состоит из нескольких файлов: system.reg, user.reg и userdef.reg.
    • Файлы располагаются в корневом каталоге префикса. Пример: ~/.wine/
  • Иерархия разделов реестра Wine-префикса аналогична Windows.
  • В реестре хранятся различные настройки среды префикса.
  • Дерево реестра из оригинальной ОС Windows не совместимо с реестром Wine и наоборот.
    • В реестр Wine-префикса можно импортировать отдельные записи из reg-файлов, предназначенных для Windows.
  • В Wine реализованы стандартные Windows-утилиты для работы с реестром.
    • regedit — утилита с графическим интерфейсом, идентичным оригинальной программе.
    • reg — утилита для манипуляций с записями в реестре через терминал.
    • Файлы реестра Wine можно редактировать обычным текстовым редактором.
  • Ключи реестра Wine-префикса.

Пример запуска regedit для префикса с названием .wine:

WINEPREFIX=/home/$USER/.wine wine regedit

Altlinux wine basics regedit.png

Переключение транслятора

Для работы программ, задействующих DirectX, в Wine используется специальный транслятор, который преобразует вызовы API DirectX в OpenGL или Vulkan.

Трансляция в OpenGL имеет значительные накладные расходы, что выражается в потерях до 40% производительности в отдельных случаях и до 20% в среднем. Имеет высокую совместимость со старыми видеокартами.

Транслятор на основе Vulkan более производительный, но требует относительно современного оборудования: видеокарты от 2016 года с поддержкой спецификации Vulkan 1.3. Потери редко превышают 20% и, благодаря более продвинутым качественным драйверам и подсистемам, производительность частенько несколько выше (до 10%), чем в Windows.

Кроме отмеченных трансляторов, в Wine присутствует свободная реализация GDI, который можно задействовать для правильной отрисовки графики в некоторых программах 90-х и начала 2000-х годов. К примеру, Parkan Хроника империи.

По заявлению разработчиков, в 2022 году между трансляторами был достигнут паритет по поддержке спецификаций DirectX, поэтому предпочтительно задействовать Vulkan-транслятор. При этом стоит отметить, что OpenGL-транслятор всё-таки имеет более высокую совместимость со старыми программами (по крайней мере, на момент 2023 года).

На момент 2023 года Vulkan-транслятор не используется по умолчанию и его необходимо задействовать вручную. Актуальным способом является переключение через переменную окружения WINE_D3D_CONFIG.

Пример:

WINE_D3D_CONFIG='renderer=vulkan' WINEPREFIX=/home/$USER/.wine wine 'C:/Program Files (x86)/STALKER Clear Sky/STALKER Clear Sky.lnk'

Пояснения:

  • Переменной окружения WINE_D3D_CONFIG необходимо передать значение ‘renderer=vulkan’.
  • Vulkan-транслятор будет задействован для конкретной программы.

Примечание: Таким же способом можно задействовать GDI — WINE_D3D_CONFIG =’renderer=gdi’

Ассоциация файлов с родными приложениями Linux

Нужна для возможности открытия документов из приложений в Wine через нативные программы в Линуксе.

Для этого создайте файл /usr/local/bin/winenative со следующим содержимым:

#!/bin/sh
$1 "`wine winepath -u "$2"`"

Сделайте его исполняемым: chmod +x /usr/local/bin/winenative

Затем от пользователя запускаем редактор реестра: wine regedit. В HKEY_CLASSES_ROOT ищем ключ — pdffile для PDF-файлов, pngfile для PNG изображений и т.п., в нем будет shell > open. В open может быть ddeexec, который нужно удалить (если оставить, необходимая программа хоть и откроется, однако выскочит сообщение от Wine — Ошибка DDE.). Нам необходимо создать или изменить ключ command. Значение ключа выставляем:

"Z:usrlocalbinwinenative" xdg-open "%1"

Должно получиться так:

Pdf regedit.png

После этого настроенный тип файла будет открываться в программе по умолчанию в Линуксе.

Для настройки нестандартных для Linux файлов — например doc/docx — настройка немного отличается. Нужно полностью создать следующую цепочку:

HKEY_CLASSES_ROOTdocfileshellopencommand

с аналогичным значением: «Z:usrlocalbinwinenative» xdg-open «%1». После этого создать ветку HKEY_CLASSES_ROOTdoc со значением docfile

Варианты Wine

В дистрибутивах ALT Linux представлено несколько вариантов Wine:

  • wine — сборка Wine с добавлением патчей проекта Wine-staging и доработанного силами ALT Linux Team и компании Etersoft. Именно эта сборка является основной для дистрибутивов ALT Linux, так как имеет лучшую функциональность и поддерживается разработчиками.
  • wine-stable — сборка стабильного релиза Wine c добавлением патчей проекта Wine-staging и доработанного силами ALT Linux Team и компании Etersoft. Именно эта сборка является основной для дистрибутивов ALT Linux, так как имеет лучшую функциональность и поддерживается разработчиками.
  • wine-vanilla — сборка оригинального Wine от WineHQ без каких-либо изменений.

У компании Etersoft есть ещё одна — коммерческая — версия: WINE@Etersoft, которая также совместима с дистрибутивами ALT Linux (впрочем, как и с другими дистрибутивами Linux). WINE@Etersoft сертифицируется на предмет совместимости как с операционной системой, так и с приложениями, что позволяет получить поддержку и гарантии работоспособности.

Полезные команды

wine cmd # Windows terminal / execute bat batch scripts, etc. (CLI)
wine control # Wines equivalent of the Windows Control panel (GUI)
wine eject # Eject a disc from the specified optical drive (CLI)
winepath # mangle Windows <-> Unix paths (CLI)
wine reg # registry editor (CLI)
wine taskmgr # same as Windows task manager utility (GUI)
wine uninstaller # global program installer / uninstaller (GUI)
wine winefile # alternative Wine file manager (GUI)
wine explorer # desktop (GUI)

Ссылки по теме

  • Несколько архитектур в одной ОС (Arepo/Biarch)
    • 32-битный OpenGL на 64-битной системе с драйвером Intel
    • 32-битный OpenGL на 64-битной системе с драйвером NVIDIA
  • Описание WINE@Etersoft
  • Установка WINE@Etersoft на 64-битные ОС
  • Документация по WINE@Etersoft на русском языке
  • Q4Wine
  • Ассоциация файлов с родными приложениями Linux: [1], [2]
  • Ярлычки программ

Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

  • Форум русскоязычного сообщества Ubuntu »
  • Архив »
  • Архив »
  • Архив тем до 2016г »
  • Wine «Ошибка dde» Microsoft word 2007
  • Печать

Страницы: [1]   Вниз

Тема: Wine «Ошибка dde» Microsoft word 2007  (Прочитано 1400 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
tall32

Доброго времени суток.

Microsoft Word 2007 установленный в Wine 1.6
(WINEARCH=win32 WINEPREFIX=~/.wine winecfg)

Работает нормально, но когда отрываешь документ, периодически вылезает сообщение:
«Ошибка dde«

Поиск ни к чему конкретному не привел.

Кто нибудь сталкивался с подобной проблемой?…

В заранее спасибо.


P.S.
Что самое интересное в Windows 7 сталкивался примерно с такой же проблемой, но перепробовав все решения которые нашел в поиске так и не решил эту проблему.

« Последнее редактирование: 21 Сентября 2014, 21:44:05 от tall32 »


  • Печать

Страницы: [1]   Вверх

  • Форум русскоязычного сообщества Ubuntu »
  • Архив »
  • Архив »
  • Архив тем до 2016г »
  • Wine «Ошибка dde» Microsoft word 2007

SMF 2.0.19 |
SMF © 2011, Simple Machines | Карта форума

Страница сгенерирована за 0.051 секунд. Запросов: 23.

I have seen alot of assertion failed errors over the years (mainly in native Windows) and they are quite hard to pin point. I recommend that you uninstall Office then upgrade your Wine version as per the instruction below and lastly try installing Office again.

First add the add the PPA.

sudo add-apt-repository ppa:ubuntu-wine/ppa

Then update your system.

sudo apt-get update

Then try installing Wine 1.5

sudo apt-get install wine1.5

That should get you up and running.

References

Adding the WineHQ PPA Repository

Понравилась статья? Поделить с друзьями:
  • Windowsupdate 80072efe ошибка
  • Windowstrustedrt sys windows 10 ошибка
  • Windows перенаправление вывода ошибок
  • Windows ошибка приложения ошибка при инициализации приложения
  • Windows ошибка usb устройство не опознано windows