Различия между версиями 1 и 15 (по 14 версиям)
Версия 1 от 2008-07-22 01:53:59
Размер: 4662
Редактор: eSyr
Комментарий:
Версия 15 от 2008-08-13 12:47:31
Размер: 7555
Редактор: eSyr
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 3: Строка 3:
Что касается работы с windows-приложениями. Прежде, чем переходить к этому, про установку стрннего софта. Лектор уже перечислил причины, п которым необх. уст. строннего софта. ... Несмотря на то, что:
Строка 5: Строка 5:
Эти ситуации крпйне редки по двум причинам:
 * чень мнго сфта есть в хранилище.
 * уровень комфрта при уст пакета и при уст. непонятно чег разл. в разы.
    * хранилища содержат очень много различного программного обеспечения;
    * пакеты ставить в любом случае проще и комфортнее для пользователя, чем какие-либо приложения с собственным инсталлятором;
Строка 9: Строка 8:
Для тгээ, чтобы работали виндвые программы, необх. уст. wikne. Это не верт. машина. Для того, чтобы эт зарабтало как надо, над сделать пару волшеб. теложвижений:
 * Надо иметь в виду, как работае wine. Он притворяется, что некие места в системе сотв. дискам. У этого свйства есть св-в обратное --- неиск., что файл, если его не видно, то его запустить не смжете
Фар не запустится прсто так, потому чт он рабтает в линуксовой кнсоли. Вайн этог отличить не может. Правильный метд запуска фара: wine-console --backend=user Far.exe
иногда всё-таки возникает необходимость воспользоваться каким-то приложением, которое распространяется исключительно под Windows.
Строка 13: Строка 10:
Одна маленькая проблема --- dir /w не рабтае. Эт птому, что Far пытается запустить прямо dir /w. Для этого надо доьбавить far в окружение win 98. Для того, чтобы осуществить подобное, в Linux используется программа WINE (WINE = Wine Is Not an Emulator).
Строка 15: Строка 12:
Далеко не всегда надо плясать вокруг виндузовой прграммы так много. Иногда она прсто не работает. Таким образом, название сообщает нам, что эта программа не является эмулятором. И верно, на деле принцип работы Wine проще: так как windows-приложение состоит из тех же процессорных инструкций, что и любое другое приложение под данный процессор, то для его исполнения достаточно сделать вид, что оно исполняется в привычной для себя Windows-среде --- т.е. вызывает из нужных библиотек нужные функции, распознает правильную абстракцию файловой системы и т.д.
Строка 17: Строка 14:
Чтбы закончить с wine --- wine --- свбодная программа, предн. для зпуска прграмм. На базе wine пишется минимум три изв. несвободных версии, кторые предн. разные для своег:
 * Cedega --- wine с внедрённым directx для запуска игр. Есть Transgaming software, клторая этим занимается
 * Crossover office --- т же самое п тн. к офису
 * Есть в питере wine@etersoft, кторая занимается тем же самым по тн. к нашим разработкам --- 1c, ... Их здача --- запуск программ, специфичных для российского рынка. В отлшичие от предыдущих прогр. продуктов, wine@etersoft local --- свобдный прогр. прдукт и в такй версии он входит в альт. Помимо local есть network и sql, первый позв. запускать 1с и хдить к нему неск. клиентам, тот, котрый sql умеет транс. sql-запросы. Документацию по вайну рекммендуется читать именн здесь.
Параметры данной "искуственной" среды задаются в конфигурационных файлах wine (их удобно редактировать с помощью утилиты winecfg): к примеру, там задаётся соответствие "дисков" Windows, которые сможет "увидеть" запускаемая Windows-программа, некоторым каталогам вашей файловой системы в Linux. Стоит быть осторожным при задании этих каталогов: если исполняемое при помощи wine приложение находится вне них, работать оно не будет.
Строка 22: Строка 16:
Также более-менее норм. запускаются приложения, написанные на flash, в принципе, дост .высока вероятнсть, чт зараб. приложения, написанные на java. отчасти программы на дотнете рабтают. Могут возникнуть и другие неожиданности --- например, при запуске консольных Windows-приложений:
{{{
[user@demo ~]$ wine Far.exe
err:winedevice:ServiceMain driver L"eusk3usb" failed to load
err:winedevice:ServiceMain driver L"SNTNLUSB" failed to load
err:seh:setup_exception_record stack overflow 188 bytes in thread 0009 eip cdcdcdcd esp 00231274 stack 0x230000-0x231000-0x330000
}}}
Far Commander не запустится просто так, потому что здесь он должен работать в консоли Linux. Wine сам этого отличить не может, и надо это явно указать: `wine-console --backend=user Far.exe`

Также при работе с консольными приложениями, скорее всего, стоит указать в конфигураторе winecfg режим эмуляции Windows 98 из-за некоторых проблем с вызовом программ в консоли Windows.

Но, увы, все эти и многие другие ухищрения могут ни к чему не привести - большое количество Windows-приложений ни при каких условиях не сможет заработать в среде wine по тем или иным причинам. Сообщество поддерживает различные базы приложений, работающих в wine, одна из них находится на самом сайте wine --- [[http://appdb.winehq.org/objectManager.php?sClass=application&sTitle=nyah|Wine HQ App DB]].

Чтобы завершить наш разговор на тему пакета wine, определим его общее предназначение: wine --- свободная программа, предназначенная для запуска Windows-программ. Помимо этого, на базе wine в данный момент разрабатываются как минимум три известных несвободных версии, которые предназначены для более специфичных прикладных задач:

    * Cedega --- расширенный wine с встроенной поддержкой DirectX для запуска Windows-игр. Разработкой и поддержкой программы занимается компания Transgaming software;
    * Crossover office --- расширение wine, созданное для запуска и комфортной работы с офисными Windows-приложениями;
    * В Санкт-Петербурге функционирует команда wine@etersoft, которая занимается приспособлением wine для запуска программных продуктов, специфичных для российского рынка --- 1С, генераторы отчётов и документов и т.д. В отличие от предыдущих программных продуктов, wine@etersoft local --- свободный программный продукт, и в такой версии он входит в дистрибутив ALTLinux. Помимо версии local существуют также версии network и sql: первая позволяет запускать продукты 1С для многопользовательской работы с клиентами, а вторая умеет транслировать sql-запросы по образу и подобию Microsoft SQL. Кстати, документация для wine, созданная wine@etersoft, рекомендуется к прочтению как лучшая из существующих.

Стоит отметить, что приложения на Java, скорее всего, будут работать.
Строка 30: Строка 43:
|| 0 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, GeorgeTarasov, MaximByshevskiKonopko || || || || 70 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, GeorgeTarasov, MaximByshevskiKonopko || || ||

Запуск Win32-приложений

Несмотря на то, что:

  • хранилища содержат очень много различного программного обеспечения;
  • пакеты ставить в любом случае проще и комфортнее для пользователя, чем какие-либо приложения с собственным инсталлятором;

иногда всё-таки возникает необходимость воспользоваться каким-то приложением, которое распространяется исключительно под Windows.

Для того, чтобы осуществить подобное, в Linux используется программа WINE (WINE = Wine Is Not an Emulator).

Таким образом, название сообщает нам, что эта программа не является эмулятором. И верно, на деле принцип работы Wine проще: так как windows-приложение состоит из тех же процессорных инструкций, что и любое другое приложение под данный процессор, то для его исполнения достаточно сделать вид, что оно исполняется в привычной для себя Windows-среде --- т.е. вызывает из нужных библиотек нужные функции, распознает правильную абстракцию файловой системы и т.д.

Параметры данной "искуственной" среды задаются в конфигурационных файлах wine (их удобно редактировать с помощью утилиты winecfg): к примеру, там задаётся соответствие "дисков" Windows, которые сможет "увидеть" запускаемая Windows-программа, некоторым каталогам вашей файловой системы в Linux. Стоит быть осторожным при задании этих каталогов: если исполняемое при помощи wine приложение находится вне них, работать оно не будет.

Могут возникнуть и другие неожиданности --- например, при запуске консольных Windows-приложений:

[user@demo ~]$ wine Far.exe
err:winedevice:ServiceMain driver L"eusk3usb" failed to load
err:winedevice:ServiceMain driver L"SNTNLUSB" failed to load
err:seh:setup_exception_record stack overflow 188 bytes in thread 0009 eip cdcdcdcd esp 00231274 stack 0x230000-0x231000-0x330000

Far Commander не запустится просто так, потому что здесь он должен работать в консоли Linux. Wine сам этого отличить не может, и надо это явно указать: wine-console --backend=user Far.exe

Также при работе с консольными приложениями, скорее всего, стоит указать в конфигураторе winecfg режим эмуляции Windows 98 из-за некоторых проблем с вызовом программ в консоли Windows.

Но, увы, все эти и многие другие ухищрения могут ни к чему не привести - большое количество Windows-приложений ни при каких условиях не сможет заработать в среде wine по тем или иным причинам. Сообщество поддерживает различные базы приложений, работающих в wine, одна из них находится на самом сайте wine --- Wine HQ App DB.

Чтобы завершить наш разговор на тему пакета wine, определим его общее предназначение: wine --- свободная программа, предназначенная для запуска Windows-программ. Помимо этого, на базе wine в данный момент разрабатываются как минимум три известных несвободных версии, которые предназначены для более специфичных прикладных задач:

  • Cedega --- расширенный wine с встроенной поддержкой DirectX для запуска Windows-игр. Разработкой и поддержкой программы занимается компания Transgaming software;
  • Crossover office --- расширение wine, созданное для запуска и комфортной работы с офисными Windows-приложениями;
  • В Санкт-Петербурге функционирует команда wine@etersoft, которая занимается приспособлением wine для запуска программных продуктов, специфичных для российского рынка --- 1С, генераторы отчётов и документов и т.д. В отличие от предыдущих программных продуктов, wine@etersoft local --- свободный программный продукт, и в такой версии он входит в дистрибутив ALTLinux. Помимо версии local существуют также версии network и sql: первая позволяет запускать продукты 1С для многопользовательской работы с клиентами, а вторая умеет транслировать sql-запросы по образу и подобию Microsoft SQL. Кстати, документация для wine, созданная wine@etersoft, рекомендуется к прочтению как лучшая из существующих.

Стоит отметить, что приложения на Java, скорее всего, будут работать.


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

70

1

1

1

1

MaximByshevskiKonopko, GeorgeTarasov, MaximByshevskiKonopko


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex

PspoClasses/080720/05Wine (последним исправлял пользователь MaximByshevskiKonopko 2008-10-09 21:52:29)