Начинаем с добавления
PPA-репозитория для установки свежего Wine:
sudo add-apt-repository ppa:ubuntu-wine/ppa
Или через
GUI: Система — Администрирование — Источники Приложений.
Вкладка — Другое По. Добавляем — ppa:ubuntu-wine/ppa
Устанавливаем свежий Wine:
sudo aptitude update
sudo aptitude install wine1.3 winetricks
Устанавливаем библиотеку
DCOM:
winetricks dcom98
Копируем из Windows библиотеку
MSVCRT40.
DLL в директорию /home/usr/.wine/drive_c/windows/system/
Устанавливаем
MFC42.
DLL
winetricks MFC42.DLL
Устанавливаем шрифты:
winetricks corefonts
winetricks tahoma
winetricks lucida
Если каких-то шрифтов не будет хватать — их можно взять из установленной где-нибудь Windows.
Устанавливаем 1С 7.7, все должно пройти гладко.
Запускаем в 1С конфигуратор баз и убираем галочку из меню “Окна — Панель Окон —
Показать”. Это нужно сделать раз для каждой базы и для каждого вида запуска —
будь то конфигуратор, предприятие и т.п.
Чтобы не было проблем с кодировкой — либо заходим в БД, меню “администрирование
— кодовая страница таблиц ИБ” и меняем на “Текущая системная установка” и ждем…..
Иногда это не совсем удобно, если БД используют машины с Windows, тогда создаем
либо в директории с базой, либо в каталоге
BIN 1C пустой файл OrdNoChk.prm
Локальная версия должна заработать. Но это нам не интересно, нужно в базу заходить по сети.
Качаем etercifts c сайта Etersoft (http://wiki.etersoft.ru/etercifs), он
свободный и не требует оплаты. Устанавливаем (инструкции по нему — на
етерсофте). После его установки потребуется перезагрузка.
Открываем fstab и добавляем строки для монтирования нужных сетевых ресурсов
//server1c/BaseBuh /home/usr/BaseBuh cifs rw,user,username=WORKGROUP\имяпользователя,password=пароль,iocharset=utf8,noperm,forcemand,direct 0 0
Монтируем:
sudo mount /home/usr/BaseBuh
Теперь каталог с базой у нас смонтирован, и мы можем добавить базу.
Это же вновь не то, что хотелось, ведь база у нас на
SQL-сервере.
winetricks mdac25
winetricks mdac28
winecfg: sqlsrv32.dll — сторонняя.
возможно мдак25 и не надо было сначала устанавливать, но так я делал.
Проверяем:
wine regedit
“
HKLM\Software\
ODBC\
ODBCINST.
INI” — Должна быть папка с названием “
SQL Server”,
если нет — копируем из Windows и проверяем путь: строковый параметр — Driver.
Вуаля, заработала связка 1С+
SQL.
Но могут быть проблемы с нахождением сервера, в этом случае заходим в
конфигуратор — “Администирование” — Параметры базы данных
SQL и адрес сервера
меняем с имени на его
IP-адрес.
1С мы запустили но мне, как разработчику плохо живется без OpenConf.
Качаем последний OpenConf (http://openconf.1cpp.ru/).
Перед установкой OpenConf, нужно поставить
MS Visual Basic 6 runtime (нужен для
регистрации c:/Program Files/1Cv77/
BIN/config/system/svcsvc.dll)
winetricks vb6run
Поставить
IE, нужен для регистрации wsc компонентов:
winetricks ie6
Зарегистрировать все
WSC компоненты из каталога c:/Program Files/1Cv77/
BIN/config/system
wine regsvr32 /i:CommonServices.wsc C:/windows/system32/scrobj.dll
… и т.д. для всех файлов
Компонент OpenConf.RegistryIniFile.wsc надо регистрировать в последнюю очередь!
Заметка про OpenConf была чуть модифицирована, ориганал.
Осталась одна проблема с мертвым Enter-ом. В журнале документов либо в форме
списка справочников он не работает!
Предлагаю воспользоваться FormEx.dll (последняя версия есть на
http://www.dorex.ru/?download или можно найти на форуме
http://1clinux.org/formex_t.zip )
Далее извлекаем файл “FormEx.dll”, складываем в каталог C:\Program files\
BIN\
Заходим в конфигуратор и:
1. в процедуру “ПриНачалеРаботыСистемы()” добавляем:
"
Если ЗагрузитьВнешнююКомпоненту("FormEx.dll")=0 Тогда
Предупреждение("Не удается загрузить внешнюю компоненту 1C++!",10);
КонецЕсли;
"
2. создаём в глобальном модуле новую процедуру:
"
Процедура ПриНажатииКнопкиКлавиатуры(Конт, КодКл, Алт, Шифт, Контрл, Символ, ФСО)
//Сообщить (КодКл);
Если КодКл=13 Тогда
Service = СоздатьОбъект("Сервис");
Service.SendKeys("{TAB}");
//КодКл=9;
КонецЕсли;
КонецПроцедуры
"
Заметка про FormEx основана на http://1clinux.org/index.php?topic=188.0
Вот в принципе и все :) имеем полностью рабочую 1С, запущенную в свободном Wine.
PS.
Когда пытался запустить игрушки баловался с winetricks (d3dx9, directx9 и
т.д.). И после этого панель окон стала нормально отображаться. 1С перестала
вызывать ошибку и нормально работает (либо это связано с обновлением wine,
которое было произведено незадолго до этого). В настройках Wine для 1С убрана
лишь галочка — “разрешить менеджеру окон декорировать окна”.
источник