1c версии 7.7- решение проблем: различия между версиями
imported>Vix |
imported>Vix |
||
(не показано 13 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
== отключение заставки == | == отключение заставки == | ||
* вариант первый командой: | * '''вариант первый командой''': | ||
"c:\program files\1cv7\bin\1cv7.exe" /nosplash | "c:\program files\1cv7\bin\1cv7.exe" /nosplash | ||
* вариант второй - в конфигурации: | * '''вариант второй - в конфигурации''': | ||
[http://manaeff.ru/forum/viewtopic.php?f=11&t=897 тут] | [http://manaeff.ru/forum/viewtopic.php?f=11&t=897 тут] | ||
* вариант третий - утилитой: | * '''вариант третий - утилитой''': | ||
[http://1c.proclub.ru/modules/mydownloads/personal.php?cid=142&lid=7913 качаем тут] | [http://1c.proclub.ru/modules/mydownloads/personal.php?cid=142&lid=7913 качаем тут] | ||
реестр: | реестр: | ||
При закрытии терминального приложения остается зпущенным процесс 1cSplashHider.exe, который воспринимается как приложение | |||
и не дает автоматически завершить сессию. Все что нам нужно это заставить систему воспринимать 1cSplashHider.exe | |||
как процесс в терминальной сессии который необходимо завершать при закрытии приложения. | |||
* открываем редактор реестра: Win+R – regedit; | * открываем редактор реестра: Win+R – regedit; | ||
Строка 18: | Строка 20: | ||
* [http://1clinux.org/index.php?topic=35.0 еще пример] | * [http://1clinux.org/index.php?topic=35.0 еще пример] | ||
* '''вариант четвертый - хирургический''': | |||
<p>Специалисты компании 1С при разработке версии 7.7 отчего то решили, что их нелепая анимация при запуске 1С кому то из пользователей интересна. К тому же эта гнусная поделка неимоверно тормозит. Если клиент находится в одной локальной сети с сервером 1С, то он может ничего и не заметить. Однако когда речь идет о доступе посредством протокола RDP к 1С через интернет… К тому же горе-программисты даже не предусмотрели возможность штатного отключения своего поделия. В оправдание следует заметить, что в более новых версиях 1С они исправили свой недосмотр. Однако многие все еще живут с версией 7.7, так что о ней речь пойдет дальше.</p> | |||
<p><span id="more-904"></span></p> | |||
<p>В подтверждение негативных эмоций по поводу версии 7.7 привожу простые замеры времени запуска, которые показывают всю ущербность анимации.</p> | |||
<p>Доступ к терминальному серверу осуществляется посредством rdesktop через ssh тунель:</p> | |||
rdesktop -g -a8 -k en-us localhost:10000 | |||
<p>Выполняется последовательный запуск двух копий 1С скриптом. После каждого запуска производился логоф юзера. Хорошо бы конечно перезагружать сервер, однако у меня не было возможности это делать.</p> | |||
<table align="center" border="1" cellpadding="5" cellspacing="0"> | |||
<tr align="center"> | |||
<th bgcolor="#e6e6e6"><br> | |||
</th> | |||
<th bgcolor="#e6e6e6">1 запуск, мин</th> | |||
<th bgcolor="#e6e6e6">2 запуск, мин</th> | |||
<th bgcolor="#e6e6e6">3 запуск, мин</th> | |||
<th bgcolor="#e6e6e6">среднее значение, мин</th> | |||
</tr> | |||
<tr align="center"> | |||
<td><b>С анимацией</b></td> | |||
<td>03:01</td> | |||
<td>02:50</td> | |||
<td>02:45</td> | |||
<td>02:52</td> | |||
</tr> | |||
<tr align="center"> | |||
<td><b>Без анимации</b></td> | |||
<td>00:08</td> | |||
<td>00:08</td> | |||
<td>00:08</td> | |||
<td>00:08</td> | |||
</tr> | |||
</table> | |||
<p>Таким образом без анимации 1С запускаются в <b>21,5</b> раз быстрее!</p><br> | |||
<p>Посему это безобразие я не могу обойти стороной.</p><br> | |||
Для отключения отображения заставки необходимо при помощи HEX-редактора,<br> | |||
(программы для редактирования и просмотра двоичных данных в шестнадцатеричном представлении)<br> | |||
найти в файле библиотеки '''1с\Bin\seven.dll''' последовательность: | |||
85 C0 '''74''' 1D 8B 4C 24 10 | |||
<p>и заменить ее на:</p> | |||
85 C0 '''EB''' 1D 8B 4C 24 10 | |||
<p>Предварительно обязательно сделайте резервную копию seven.dll</p> | |||
* [http://sadmin.pp.ua/otklyuchenie-zastavki-1s-v7-7.html взято тут] | |||
==Samba 1с7.7 и блокировки== | |||
'''Проблема:''' | |||
"Уже где-то на протяжении недели танцую самбу с бубном в руках. Целью сих увлекательных манипуляций,среди всего прочего, является наличие в месте, где я осуществляю свою проф-ую деят-ть работающего(это важно)) файлового сервера Samba с базами 1с на борту (дистрибутив - ubuntu 9.10 Desktop, в начале эпопеи стоял Debian Lenny, но он не выдержал моих издевательств)). В Дебиане использовалась самба 3.25, в бубунте - 3.4.0. | |||
То, что проделывают самба на пару с 1ской после того, как к расшаренным базам подключаются хотя бы 2 пользователя, совместной работой назвать трудно. | |||
Тормоза неприемлемые однозначно и дело тут совершенно точно не в пропускной способности сети, производительности файловой системы и жёстких дисков и т.д. и иже с ними. В инете по форумам народ носится с блокировками и экспериментами в smb.conf(комбинируют аттрибуты конфигурационного файла различными способами с целью, видимо посчитать максимально-возможное число комбинаций)). Потому как ни у кого не работает, окромя тех, у кого работает с самого начала с коробки без лишних манипуляций или тех, кто является или являлся счастливым обладателем самбы под версиями в районе 2.0.7-2.0.10.(ну плюс-минус чуть-чуть, не помню, может и 2.2 у кого-то работала)." | |||
'''Решение:''' | |||
Сервер с базами 1с член домена DOM на Win 2003. Дистр - слака 12.0, самба 3.2.15. Вот конфиг: | |||
[global] | |||
interfaces = eth0 lo | |||
hosts allow = 192.168.0. 127. | |||
netbios name = dom-1c | |||
workgroup = dom | |||
password server = 192.168.0.1 | |||
server string = 1c bases | |||
security = ADS | |||
realm = DOM | |||
#passdb backend = tdbsam | |||
allow trusted domains = yes | |||
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 | |||
os level = 1 | |||
preferred master = No | |||
local master = No | |||
domain master = No | |||
dns proxy = No | |||
ldap ssl = no | |||
strict locking = No | |||
time server = no | |||
auth methods = winbind | |||
encrypt passwords = yes | |||
winbind use default domain = yes | |||
idmap uid = 10000-20000 | |||
idmap gid = 10000-20000 | |||
winbind enum users = yes | |||
winbind enum groups = yes | |||
log file = /var/log/samba/log.%m | |||
max log size = 1024 | |||
log level = 1 | |||
display charset = koi8-r | |||
unix charset = koi8-r | |||
dos charset = cp866 | |||
nt acl support = yes | |||
printcap name = /etc/printcap | |||
max xmit = 65535 | |||
dead time = 15 | |||
use sendfile = no | |||
max open files = 65535 | |||
kernel oplocks = yes | |||
[1c-buh] | |||
comment = 1c for Buhgalteriya | |||
path = /1c/buh | |||
admin users = @"DOM\администраторы домена" | |||
read only = no | |||
create mask = 1775 | |||
directory mask = 1775 | |||
printable = no | |||
available = yes | |||
map acl inherit = yes | |||
inherit owner = no | |||
inherit acls = no | |||
inherit permissions = no | |||
acl check permissions = true | |||
acl map full control = true | |||
blocking locks = yes | |||
level2 oplocks = yes | |||
locking = yes | |||
oplocks = yes | |||
strict locking = no | |||
posix locking = yes | |||
browseable = yes | |||
share modes = yes | |||
[http://webhamster.ru/mytetrashare/index/mtb0/1328360384uj1pfurnxg взято тут] | |||
==Как установить 1С 7.7 в Линуксе (wine, ubuntu linux, 1С)== | |||
1. Установить wine<br> | |||
2. Запускаем wine, пусть создаст папку ~/.wine/<br> | |||
если сразу папка не появилась то скормите wine какое нибудь виндовое приложение (*.EXE)<br> | |||
3. Качаем Dcom98 c сайта http://www.microsoft.com/com/default.mspx (размер 1229056 байт)<br> | |||
4. Копируем Dcom98 в ~/.wine/drive_c/<br> | |||
5. Запускаем winecfg. Надо убрать галочку с "Графика"->"Разрешить менеджеру окон управлять окнами"<br> | |||
6. запускаем: wine DCOM98.EXE /C /T:c:\\temp /Q<br> | |||
если ругнулся на неправильную версию Windows DCOM98 can only installed on Windows 98. For WindowsNT, please install latest service packs. <br>ничего страшного: НЕ НАЖИМАЯ КНОПКУ "OK" копируем все из папки /drive _c/windows/temp или /drive_c/windows/temp/IXP000.TMP (по ситуации) в /drive_c/windows/system32<br> | |||
7. запускаем winecfg, в приложениях добавляем DCOM98.EXE, выделив его выбираем вкладку "Библиотеки" делаем ole32=(родная,встроенная) | |||
8. Запускаем wine DCOM98.EXE /Q<br> | |||
9. Из настоящего Windows копируем msvcrt40.dll в наш windows\system32<br> | |||
10. Запускаем wine 1C_77_25setup.exe (у вас установочный дистрибутив 1С может называться по-другому), установка должна пройти без проблемм. Ставим базы.<br> | |||
11. снова запускаем winecfg. В приложениях добавляем 1cv7l.exe (экзешник которым будем стартовать 1С), В библиотеках к нему добавляем: | |||
"rpcrt4" = "родная,встроенная" | |||
"ole32" = "родная,встроенная" | |||
"olepro32" = "родная,встроенная" | |||
"oleaut32" = "родная,встроенная" | |||
"msvcrt40" = "родная,встроенная" | |||
если winecfg английский, то родная=native, встроенная=builtin | |||
12. Запускаем 1С!!!:) Запускать лучше из терминала - увидим все ошибки. | |||
Если при запуске будет ругаться: | |||
err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found | |||
err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\shell32.dll") not found | |||
err:module:import_dll Library shell32.dll (which is needed by L"c:\\windows\\system32\\comdlg32.dll") not found | |||
err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found | |||
err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\comdlg32.dll") not found | |||
err:module:import_dll Library comdlg32.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found | |||
err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found | |||
err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\shell32.dll") not found | |||
err:module:import_dll Library shell32.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found | |||
err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found | |||
err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found | |||
err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found | |||
err:module:LdrInitializeThunk Main exe initialization for L"c:\\windows\\system32\\winecfg.exe" failed, status c0000135 | |||
Проверьте все предыдущие шаги. | |||
Если в этих строках будет упоминание про MFC42.DLL надо его достать из настоящей windows и скинуть в наш windows\system32. | |||
13. Если всё увидели, то идём в меню выбора баз данных, добавляем базы, выбираем нужную и входим в неё через конфигуратор. | |||
"Администрирование"->"Кодовая страница таблиц ИБ" меняем на "+Текущая системная установка". | |||
"Окна" - "Панель окон" отключаем (снять галочку) | |||
этот пункт надо повторить _со_всеми_используемыми_базами_!!! Иначе при запуске будет выходить ошибка: "Порядок сортировки, установленный для базы данных, отличается от системного!" | |||
14. Запускаем 1С. Выбираем базу, грузимся. первым делом "Окна" - "Панель окон" отключаем. | |||
Если 1С вылетает быстрее чем вы можете отключить эту функцию то запускаем wine regedit | |||
ищем ключ HKEY_USERS/s-1-5-4/Software/1c/1cv7/7.7/<<имя базы>>/v7/default/Taskbar/ | |||
Создаём ключ формата string, имя "Show", значение =0. | |||
Если пишет ошибку: "Плохой путь Container.Contents" - проверьте все предыдущие шаги. Скорее всего не назначили библиотеки для 1С в winecfg (пункт 11.) | |||
Если при запуске в меню вместо русских букв знаки вопросов, то лезем в реестр wine regedit и правим HKEY_CURRENT_USER/Sofware/Wine/Fonts/ | |||
меняем Codepages 1251,437 на Codepages на 1251,866 | |||
ИСТОЧНИКИ: | |||
<hr> | |||
* [http://www.interface.ru/home.asp?artId=21684 Как установить 1С 7.7 в Линуксе (wine, ubuntu linux, 1С)] | |||
* [http://nowa.cc/archive/index.php/t-309326.html Мое маленькое How-to полная настройк 1С 7.7 включая SQL под свободным Wine] | |||
* [https://forum.mista.ru/topic.php?id=250304 Форум] | |||
* [http://etersoft.ru/ Решения для перехода на Linux и свободное ПО] |
Текущая версия от 00:32, 4 мая 2019
отключение заставки
- вариант первый командой:
"c:\program files\1cv7\bin\1cv7.exe" /nosplash
- вариант второй - в конфигурации:
- вариант третий - утилитой:
реестр:
При закрытии терминального приложения остается зпущенным процесс 1cSplashHider.exe, который воспринимается как приложение и не дает автоматически завершить сессию. Все что нам нужно это заставить систему воспринимать 1cSplashHider.exe как процесс в терминальной сессии который необходимо завершать при закрытии приложения.
* открываем редактор реестра: Win+R – regedit; * переходим в [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Terminal Server\SysProcs]; * добавляем DWORD: 1cSplashHider.exe со значением 0.
* еще пример
- вариант четвертый - хирургический:
Специалисты компании 1С при разработке версии 7.7 отчего то решили, что их нелепая анимация при запуске 1С кому то из пользователей интересна. К тому же эта гнусная поделка неимоверно тормозит. Если клиент находится в одной локальной сети с сервером 1С, то он может ничего и не заметить. Однако когда речь идет о доступе посредством протокола RDP к 1С через интернет… К тому же горе-программисты даже не предусмотрели возможность штатного отключения своего поделия. В оправдание следует заметить, что в более новых версиях 1С они исправили свой недосмотр. Однако многие все еще живут с версией 7.7, так что о ней речь пойдет дальше.
В подтверждение негативных эмоций по поводу версии 7.7 привожу простые замеры времени запуска, которые показывают всю ущербность анимации.
Доступ к терминальному серверу осуществляется посредством rdesktop через ssh тунель:
rdesktop -g -a8 -k en-us localhost:10000
Выполняется последовательный запуск двух копий 1С скриптом. После каждого запуска производился логоф юзера. Хорошо бы конечно перезагружать сервер, однако у меня не было возможности это делать.
1 запуск, мин | 2 запуск, мин | 3 запуск, мин | среднее значение, мин | |
---|---|---|---|---|
С анимацией | 03:01 | 02:50 | 02:45 | 02:52 |
Без анимации | 00:08 | 00:08 | 00:08 | 00:08 |
Таким образом без анимации 1С запускаются в 21,5 раз быстрее!
Посему это безобразие я не могу обойти стороной.
Для отключения отображения заставки необходимо при помощи HEX-редактора,
(программы для редактирования и просмотра двоичных данных в шестнадцатеричном представлении)
найти в файле библиотеки 1с\Bin\seven.dll последовательность:
85 C0 74 1D 8B 4C 24 10
и заменить ее на:
85 C0 EB 1D 8B 4C 24 10
Предварительно обязательно сделайте резервную копию seven.dll
Samba 1с7.7 и блокировки
Проблема: "Уже где-то на протяжении недели танцую самбу с бубном в руках. Целью сих увлекательных манипуляций,среди всего прочего, является наличие в месте, где я осуществляю свою проф-ую деят-ть работающего(это важно)) файлового сервера Samba с базами 1с на борту (дистрибутив - ubuntu 9.10 Desktop, в начале эпопеи стоял Debian Lenny, но он не выдержал моих издевательств)). В Дебиане использовалась самба 3.25, в бубунте - 3.4.0. То, что проделывают самба на пару с 1ской после того, как к расшаренным базам подключаются хотя бы 2 пользователя, совместной работой назвать трудно. Тормоза неприемлемые однозначно и дело тут совершенно точно не в пропускной способности сети, производительности файловой системы и жёстких дисков и т.д. и иже с ними. В инете по форумам народ носится с блокировками и экспериментами в smb.conf(комбинируют аттрибуты конфигурационного файла различными способами с целью, видимо посчитать максимально-возможное число комбинаций)). Потому как ни у кого не работает, окромя тех, у кого работает с самого начала с коробки без лишних манипуляций или тех, кто является или являлся счастливым обладателем самбы под версиями в районе 2.0.7-2.0.10.(ну плюс-минус чуть-чуть, не помню, может и 2.2 у кого-то работала)."
Решение: Сервер с базами 1с член домена DOM на Win 2003. Дистр - слака 12.0, самба 3.2.15. Вот конфиг:
[global] interfaces = eth0 lo hosts allow = 192.168.0. 127. netbios name = dom-1c workgroup = dom password server = 192.168.0.1 server string = 1c bases security = ADS realm = DOM #passdb backend = tdbsam allow trusted domains = yes socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 os level = 1 preferred master = No local master = No domain master = No dns proxy = No ldap ssl = no strict locking = No time server = no auth methods = winbind encrypt passwords = yes winbind use default domain = yes idmap uid = 10000-20000 idmap gid = 10000-20000 winbind enum users = yes winbind enum groups = yes log file = /var/log/samba/log.%m max log size = 1024 log level = 1 display charset = koi8-r unix charset = koi8-r dos charset = cp866 nt acl support = yes printcap name = /etc/printcap max xmit = 65535 dead time = 15 use sendfile = no max open files = 65535 kernel oplocks = yes [1c-buh] comment = 1c for Buhgalteriya path = /1c/buh admin users = @"DOM\администраторы домена" read only = no create mask = 1775 directory mask = 1775 printable = no available = yes map acl inherit = yes inherit owner = no inherit acls = no inherit permissions = no acl check permissions = true acl map full control = true blocking locks = yes level2 oplocks = yes locking = yes oplocks = yes strict locking = no posix locking = yes browseable = yes share modes = yes
Как установить 1С 7.7 в Линуксе (wine, ubuntu linux, 1С)
1. Установить wine
2. Запускаем wine, пусть создаст папку ~/.wine/
если сразу папка не появилась то скормите wine какое нибудь виндовое приложение (*.EXE)
3. Качаем Dcom98 c сайта http://www.microsoft.com/com/default.mspx (размер 1229056 байт)
4. Копируем Dcom98 в ~/.wine/drive_c/
5. Запускаем winecfg. Надо убрать галочку с "Графика"->"Разрешить менеджеру окон управлять окнами"
6. запускаем: wine DCOM98.EXE /C /T:c:\\temp /Q
если ругнулся на неправильную версию Windows DCOM98 can only installed on Windows 98. For WindowsNT, please install latest service packs.
ничего страшного: НЕ НАЖИМАЯ КНОПКУ "OK" копируем все из папки /drive _c/windows/temp или /drive_c/windows/temp/IXP000.TMP (по ситуации) в /drive_c/windows/system32
7. запускаем winecfg, в приложениях добавляем DCOM98.EXE, выделив его выбираем вкладку "Библиотеки" делаем ole32=(родная,встроенная)
8. Запускаем wine DCOM98.EXE /Q
9. Из настоящего Windows копируем msvcrt40.dll в наш windows\system32
10. Запускаем wine 1C_77_25setup.exe (у вас установочный дистрибутив 1С может называться по-другому), установка должна пройти без проблемм. Ставим базы.
11. снова запускаем winecfg. В приложениях добавляем 1cv7l.exe (экзешник которым будем стартовать 1С), В библиотеках к нему добавляем:
"rpcrt4" = "родная,встроенная" "ole32" = "родная,встроенная" "olepro32" = "родная,встроенная" "oleaut32" = "родная,встроенная" "msvcrt40" = "родная,встроенная" если winecfg английский, то родная=native, встроенная=builtin
12. Запускаем 1С!!!:) Запускать лучше из терминала - увидим все ошибки.
Если при запуске будет ругаться:
err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\shell32.dll") not found err:module:import_dll Library shell32.dll (which is needed by L"c:\\windows\\system32\\comdlg32.dll") not found err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\comdlg32.dll") not found err:module:import_dll Library comdlg32.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\shell32.dll") not found err:module:import_dll Library shell32.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found err:module:import_dll Library ole32.dll (which is needed by L"c:\\windows\\system32\\shlwapi.dll") not found err:module:import_dll Library shlwapi.dll (which is needed by L"c:\\windows\\system32\\winecfg.exe") not found err:module:LdrInitializeThunk Main exe initialization for L"c:\\windows\\system32\\winecfg.exe" failed, status c0000135
Проверьте все предыдущие шаги.
Если в этих строках будет упоминание про MFC42.DLL надо его достать из настоящей windows и скинуть в наш windows\system32.
13. Если всё увидели, то идём в меню выбора баз данных, добавляем базы, выбираем нужную и входим в неё через конфигуратор. "Администрирование"->"Кодовая страница таблиц ИБ" меняем на "+Текущая системная установка".
"Окна" - "Панель окон" отключаем (снять галочку)
этот пункт надо повторить _со_всеми_используемыми_базами_!!! Иначе при запуске будет выходить ошибка: "Порядок сортировки, установленный для базы данных, отличается от системного!" 14. Запускаем 1С. Выбираем базу, грузимся. первым делом "Окна" - "Панель окон" отключаем. Если 1С вылетает быстрее чем вы можете отключить эту функцию то запускаем wine regedit ищем ключ HKEY_USERS/s-1-5-4/Software/1c/1cv7/7.7/<<имя базы>>/v7/default/Taskbar/ Создаём ключ формата string, имя "Show", значение =0.
Если пишет ошибку: "Плохой путь Container.Contents" - проверьте все предыдущие шаги. Скорее всего не назначили библиотеки для 1С в winecfg (пункт 11.)
Если при запуске в меню вместо русских букв знаки вопросов, то лезем в реестр wine regedit и правим HKEY_CURRENT_USER/Sofware/Wine/Fonts/ меняем Codepages 1251,437 на Codepages на 1251,866
ИСТОЧНИКИ: