Работа 1С на Windows Server 2008 R2 64bit

Автор: | 09.12.2017



Работа 1С на Windows Server 2008 R2 64bit

На терминальном сервере под управлением Microsoft Windows Server 2008 R2 Standard x64 Edition Service Pack 1 возникла необходимость заставить работать клиента “1С:Предприятие” версии 7.7. Как я уже писал ранее, несмотря на то, что само приложение является 32-битным, запустить на 64-битной ОС ее все-таки возможно. Но в процессе такого запуска клиента 1С сетевой версии 7.7 (для SQL) на указанной выше ОС все же возникли некоторые трудности…

Все описанное ниже будет справедливо как для операционных систем Microsoft Windows 7 (32 и 64 битных), так и для Microsoft Windows 2008 (R2) (32 и 64 битных), не говоря уже про Vista.

Для начала, нам необходима штатно установленная на 32-х битной системе Microsoft Windows XP или Microsoft Windows 2003 Server, программа 1С сетевой версии 7.7 (у меня наличествует 27 релиз для работы с MS SQL). Копируем с такой системы папку целиком с установленной программой по пути C:\Program Files\1Cv77 в каталог серверной ОС по пути C:\Program Files (x86).

Как заставить работать 1С версии 7.7 на Windows Server 2008 R2 64bit

Теперь необходимо добавить файл 1cv7s.exe в исключение “Предотвращения выполнения данных (DEP)”. Для этого нажимаем правой кнопкой мыши по иконке Компьютер -> Свойства, вызываем “Дополнительные параметры системы”:

Как заставить работать 1С версии 7.7 на Windows Server 2008 R2 64bit

В открывшемся окне “Свойства системы” на вкладке “Дополнительно” в поле “Быстродействие” нажимаем на кнопку “Параметры…”:

В открывшемся окне “Параметры быстродействия” на вкладке “Предотвращение выполнения данных” ставим отметку в кружке “Включить DEP для всех программ и служб, кроме указанных ниже:” и нажимаем на кнопку “Добавить…”:

Выбираем файл 1cv7s.exe по пути C:\Program Files (x86)\1Cv77\BIN и нажимаем на кнопку “Открыть”:

Убеждаемся, что в поле появилась запись “1С:V7 starter program (for SQL)” и нажимаем кнопку “ОК”:




Теперь у вас существует возможность запустить “1С:Предприятие” (из-за того, что установка (как таковая) не производилась, вы не увидите сведений о Пользователе/Организации лицензиате):

Некоторое отступление: в моем случае, для того чтобы программа однозначно нашла в сети лицензионные ключи для запуска, мне пришлось прописать в файле nethasp.ini по пути C:\Program Files (x86)\1Cv77\BIN вручную IP их местонахождения, внеся в него следующие строки (без точки с запятой перед ними!):

NH_SERVER_ADDR = 172.16.100.3
NH_PORT_NUMBER = 475
NH_TCPIP_METHOD = TCP

Однако из-за того, что с момента написания программы стандартные драйвера для SQL, включенные в операционные системы от Microsoft изменились, программа не запустится из-за ошибки:

Для доступа к базе данных требуется ODBC-драйвер для MS SQL Server версии 3.50.0303 или старше.

В сети предлагают заменить версии файлов современных ОС odbcbcp.dll, sqlsrv32.dll и sqlsrv32.rll, расположенных по путиC:\Windows\System32, на одноименные файлы предыдущих версий, взятых из Windows XP или 2003 Server. Однако, никто не гарантирует, что подобное изменение системных файлов не повлечет за собой каких-либо проблем для самой ОС.

Существует еще один способ, чтобы обойти данную ошибку. Для этого необходимо в файл библиотеку bkend.dll приложения 1Cv7 внести некоторые изменения:

  1. для 27 релиза – 000D9B66: E9 46 00 00 00 90 90 90
  2. для 25 релиза – 000D9AE6: E9 46 00 00 00 90 90 90

Для тех кто не знает, каким образом внести данные изменения, предлагаю скачать исправленную библиотеку bkend.dll для 1С версии 7.7 27 релиза у меня: скачать BkEnd.zip [1,11 Mb] (cкачиваний: 146).

Теперь обязательно переименуйте существующую у вас библиотеку bkend.dll по пути C:\Program Files (x86)\1Cv77\BIN в bkend.dll.bak и поместите измененный (или скачанный у меня) файл bkend.dll в этот каталог:

Как заставить работать 1С версии 7.7 на Windows Server 2008 R2 64bit

Но и этого для корректной работы программы “1С:Предприятие” оказалось недостаточно! При попытке ее запуска выскочила новая ошибка:

Порядок сортировки, установленный для базы данных, отличается от системного!

Чтобы обойти эту ошибку, необходимо в папке с программой запуска по пути C:\Program Files (x86)\1Cv77\BIN создать пустой файл ordnochk.prm:

Как заставить работать 1С версии 7.7 на Windows Server 2008 R2 64bit

Будьте внимательны: файл должен иметь расширение .prm, а не .prm.txt !

И вот только после этого программа “1С;Предприятие” сетевой версии 7.7 для SQL заработала правильно!

Как заставить работать 1С версии 7.7 на Windows Server 2008 R2 64bit