Добрый день всем пользователям Линукса. Столкнулся с задачей запуска 1С версии 7.7 в линуксе. Долго пытался запустить, но так ничего не получалось. Но через три дня я все-таки победил =) Вот теперь хочу поделиться опытом, может кому прингодится. Да, я знаю, что по этому поводу написано много статей, но в каждой статье чего-то не хватало и так и не получалось ничего сделать, пока я не собрал комплекс действий, которым и хочу поделиться.
Запуск 1С был испробован на Линукс Мандрива 2008 (на Ubuntu 8.1 не получилось...) Сразу оговорюсь, что я не буду использовать никакие ссылки, по той простой причине, что у меня их просто нет и откуда что качал я не помню. Но поверьте в любом поисковике все файлы можно найти...
И так поехали.
1. Для начала вам необходимо скачать следующее ПО:
а). эмулятор Wine, можете его найти на сайте производителя, либо через поисковик (лично я использовал wine-1.1.12)
б). скачать программу DCOM98.exe (её тоже не проблема найти в интернете)
2. Устанавливаем wine, открываем консоль и даем команду winecfg. Появлется окно с настройками wine. Выбираем Windows по умолчанию-Windows98. Переходим на вкладку "Графика" и там снимаем галочку "Разрешить менеджеру окон управлять окнами Wine". после этих действий появится скрытая папка .wine (сразу оговорюсь, что у меня для входа в систему создан пользователь user, поэтому далее я везде использую домашний каталог /home/user. У каждого пользователь свой). Ну так вот после настройки создается каталог /home/user/.wine (кстати, точка говорит о том, что папка скрыта). если эта папка не появилась, то смонтируйте любое приложение Windows. (Например, у меня в папке /home/user есть папка Zuma. Ну так вот, я её всегда монтирую на верочку так сказать:
cd /home/user/Zuma
wine zuma.exe
Все, будем считать, что такая папка (.wine) у нас появилась. Она должна содержать две папки: dosdevices и drive_c.
3. Далее закидываем скаченную прогу DCOM98.exe в папку /home/user/.wine/drive_c После этого даем команду:
wine c:\\DCOM98.EXE /C /T:c:\\temp /Q
после этой команды идем в /home/user/.wine/temp Из этой папки копируем все фалы в /home/user/.wine/drive_c/windows/system32 на вопрос о замене файлов ответьте положительно.
4. Открываем консоль снова и даем команду:
winecfg
опять же открывается окно настройки Wine. В окне, которое появляется по умолчанию есть кнопка, позволяющая добавить прилоджения. Надо её нажать и добавить программу DCOM98.exe из каталога /home/user/.wine/drive_c После добавления программы надо её выделить и перейти на вкладку "Библиотеки" и в строке "Новое замещение для библиотеки" найти библиотеку ole32.dll(там она просто ole32) и нажать добавить. Нажать, применить и ОК.
5. Далее даем команду:
wine c:\\DCOM98.EXE /C /T:c:\\temp /Q
6. Все готово к установке 1С, так сказать фундамент заложен. Теперь 1С надо установить. (у меня файл установки лежит в каталоге /home/user и называется UniSetup. Поэтому для установки я даю команды:
cd /home/user
wine UniSetup.exe
И ставлю в C:\Program Files\1Cv77
Скажу честно она у меня сразу ломанная, поэтому никаких HASP-ключей я не ставил. Но думаю что с этим проблем не возникнет.
7. 1С поставили, вот теперь начинаются приключения и гемор...опять даем команду winecfg и добавляем собственно 1с-ку туда же, куда добавляли DCOM98.exe. У меня, например, получился такой путь:
/home/user/.wine/drive_c/Program Files/1Cv77/BIN/1cv7.exe
Выделяем её и переходим на вкладку "Библиотеки". Там добавляем следующие библиотеки: ole32.dll, oleaut32.dll, olepro32.dll, rpcrt4.dll, msvrt.dll и иногда msvrt40.dll (я лично добавлял все). Далее ВНИМАНИЕ!!! Надо сделать следующие вещи:
а).найти в реальном Windows два файлика-msvcrt.dll и mfc42.dll и скопировать их в папку /home/user/.wine/1c_drive/windows/system32 при вопросе "заменить", жмем "да, для всех". Кстати, желательно использовать файлы от Windows98. выкладываю, кстати те файлы, который у меня сто процентов работают (специально качал Win98 и выдерал их оттуда)!
приложил только один, больше нельзя оказывается
б). Запускаем 1С и добавляем базу. Заходим в конфигураторе. заходим в пункт:Администрирование-кодовая страница таблиц ИБ и выбираем "+Текущая системная установка". Далее идем Окна-Панель окон-Автоматически прятать.
в). Далее лучше это сразу сделать, чтобы не было проблем. Даем команду:
wineregedit
ищем ключ HKEY_USERS/s-1-5-4/Software/1c/1cv7/7.7/<<имя базы>>/v7/default/Taskbar/
Создаём ключ формата string(строка), имя "Show", значение =0.
8. И еще, обязательно из настоящего Windows скачайте папку Fonts, которая находится в C:\Windows\Fonts. Скопируйте её в
/home/user/.wine/drive_c/windows/fonts
Ну вроде все. С сетевой версией пока разбираюсь, но надеюсь получится. Написал статью безвозмездно и со стороны "ламера", так как линукс установил и первый раз увидел максимум неделю назад. Будут вопросы пишите, чем смогу помогу. Если кто что знает про сетевую версию, буду очень рад услышать, хотя кое-какие мысли уже есть =)