#0
by novichok79
Доброго времени суток, уважаемые специалисты 1С! Собственно возник вопрос в связи с появлением новой технологической платформы 8.3.9.1980. А как программно узнать какой разрядности запущен клиент - 32 или 64 бита? СистемнаяИнформация не дает такой инфы. Заранее благодарю за помощь.
#2
by novichok79
вот например, инфа которую дает СистемнаяИнформация с моего домашнего компа: ВерсияОС = version 6.2 (Build 9200) ВерсияПриложения = 8.3.9.1850 ОперативнаяПамять = 32 642 Процессор = GenuineIntel Intel64 Family 6 Model 94 Stepping 3 3312 MHz ТипПлатформы = Windows x86-64
#8
by Aleksey
А какое дело ВК до разрядности клиента? Ну там разрядность ОС я еще могу понять, но клиент то каким боком? Можно пример из жизни?
#10
by Живой Ископаемый
2 Например в ИР есть компоненты для парсинга и т.п. все 32-битные, в 64-битном клиенте выдают ошибки и не регятся
#13
by Vladal
Если СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда ... ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда ... ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.linux_x86 Тогда ... Иначе ... КонецЕсли;
#15
by novichok79
хорошо. а если стоит 2 версии платформы, как узнать что конкретный вызов делается из под 64битного клиента?
#24
by Serginio1
А чего давать. .Net побарабану разрядность, если внутри не используют нативные библиотеки. Например
#25
by Serg_1960
Автор спросил про разрядность клиента и ничего более. А вы обрадовались и уже во всю обсуждаете COM :) Опять двадцать пять, опять баян про то, что разрядность процесса - это не разрядность ОС :(
#28
by Garykom
Разрядность платформы 1С можно определить путем выполнения вычислений с числами и сравнения времени этих вычислений.
#29
by Garykom
+ Еще операции с памятью на максимальный допустимый объем но это напрямую в 1С сложно и могут быть ограничения от операционки или физически.
#30
by Shamandafil
Есть не надёжный способ посмотреть КаталогПрограммы , если система х64, а каталог содержит х32, то клиент 32х битный, иначе 64х битный.
#32
by Shamandafil
Для линукса вроде всегда битность 1С совпадает с битностью системы. Да и в винде путь установки можно поменять.
#34
by Garykom
Ошибка в линуксе x86_64 прекрасно запускаются i386 приложения в т.ч. 1С. Но с 1С проблемы с апачем будут
#36
by Garykom
Узнаем разрядность системы а не платформы 1С запущенной. Причем установлены могут быть разные платформы 1С, более надежно КаталогПрограммы и далее смотрим что внутри.
#43
by Shamandafil
ТипПлатформы = Windows x86-64 - показывает что сейчас исполнение идёт в процессе х64. ТипПлатформы = Windows x86 - в 32х битном
#45
by Shamandafil
Хотя, наверно, правильнее запаковать компоненты в zip-архив с манифестом, чтобы 1С сама выбирала подходящую версию компоненты.
#46
by Serginio1
А в чем проблема с помощью манифеста запустить нужную DLL Кстати через .Net можно решить так Convert=Врап.ПолучитьТип("System.Convert");
#47
by Shamandafil
Но есть пара нюансов, надо иметь подходящую версию NET, зарегистрировать переходник под х32 и х64, а это требует прав администратора.
#48
by Serginio1
Как правило Net обновляется, во вторых нужно зарегистрировать только одну библиотеку в третьих Можно выгрузить нужную ветку и заменить HKEY_LOCAL_MACHINE на HKEY_CURRENT_USER без прав администратора. У меня все руки не доходят для регистрации без прав админа по нужному пути
#49
by Serginio1
Переходник не нужен ибо .Net это Jit компиляция взависимости от разрядности текущего процесса. Сборки как правило компилятся под AnyCpu если внутри не используются нативные библиотеки через InterOp
#51
by Shamandafil
Не хватает установщика. Под переходником я подразумевал объект NetObjectToIDispatch45.
#54
by ELEA26
Все не читал, но можно же проверить папку SysWOW64 в %SystemRoot% Или проверить наличие Program Files (x86)
#55
by etc
Я не пойму а чем вам манифест не нравится? Архив с разными вариантами обработки с манифестом в макет и при подключении автоматически выбирается нужная. И кстате компонента которая с БСП идет умеет PDF417. Они правда в БСП не обернули это дело в архив с манифестом. Так отдельно и лежат 4 вида.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- как узнать остаток по кассе в любой валюте имеющейся в справочнике валют?
- Как узнать размер таблицы в SQL базе?
- Как узнать узнать идентификатор конфигурации
- Как программно узнать выходной или невыходной день?
- v81: как программно узнать стек вызовов функции/процедуры?
- Как программно установить владельца программно созданной колонке
- v7: Как программно узнать готовность принтера
- Можно ли узнать разрешение экрана клиента?
- Как программно узнать, чем заблокирован файл?
- Как передать управление с сервера на клиента?Можно ли передать Вопрос на клиента
- В подписке на событие узнать Интерактивная запись или нет?
В этой группе 1С
- УТ 11 секции
- Ошибка при вызове веб сервиса
- 8.3.9 толстый клиент 32x и 64x на одном компе.
- Настройка рлс в УТ 11
- Можно ли хранить 2 значение в константе? Например 2 числа в одном константе.
- Организовать обмен между ЗУП и самопиской: срок
- Взаимодействие 1с и PHP
- Обмен БП 3.0 УТ 10.3 Контрагенты помечаются на удаление
- Не работает фиксация колонок.
- Вопрос про 1С:Руководитель проектов
- Установка MS SQL 2012 на Windows 10
- Как в Управляемых формах найти к чему привязана процедура из элементов формы?
- 1С & SOAP: Ошибка при получении данных
- УПП: План-фактный анализ продаж на СКД
- Цикл Для каждого. Итератор для значения не определен
- НайтиПоНаименованию с учетом родителя
- Передать файл Excel с клиента на сервер
- Вопрос по индивидуальным графикам в ЗУП 2.5
- УНФ 1.6 отображение дополнительной единицы измерения при выборе в документах
- SQL Server тормозит. Диск SSD с базой tempdb загружен на 100%