|
Получить значение "Разделитель элементов списка" профиля пользователя Windows | ☑ | ||
|---|---|---|---|---|
|
0
xavchik
09.08.15
✎
12:32
|
Всем привет.
Есть обработка, которая читает данные из Excel, предварительно сохраняя таблицу в формате CSV для скорости при помощи SaveAs(). При сохранении объект Excel автоматически использует в качестве разделителя символ, установленный в профиле пользователя Windows (Панель управления - Язык и региональные стандарты - Дополнительные параметры - Разделитель элементов списка). Потом обработка уже анализирует файл, разделяя строки по разделителю. Проблема в том, что в профиле Windows в качестве разделителя может стоять, потенциально, любой символ. Так что надо получить тот, который задан в профиле пользователя и использовать для разбора именно его. Как это сделать? (";" по умолчанию не подходит, так как может содержать в ячейке таблицы) |
|||
|
1
Zhuravlik
09.08.15
✎
12:45
|
читайте с помощью ADO
|
|||
|
2
xavchik
09.08.15
✎
12:47
|
(1) А можно поподробнее - раньше никогда не использовал ADO. Пару примеров или ссылок...
|
|||
|
3
b_ru
09.08.15
✎
13:24
|
HKCU\Control Panel\International
параметр sList |
|||
|
4
xavchik
09.08.15
✎
13:52
|
(3) Ок. Я так понимаю, что это параметр реестра. А с помощью какого объекта с ним можно работать из 1С?
|
|||
|
5
mehfk
09.08.15
✎
14:15
|
КомандаСистемы + REG EXPORT
|
|||
|
6
xavchik
09.08.15
✎
19:34
|
(3) Всем спасибо.
Получил через реестр Windows Функция ПолучитьРазделительЭлементовСпискаПолзователяWindows() //Зададим разделитель по умолчанию Разделитель = "~"; Попытка //HKEY_CURRENT_USER\Control Panel\International\sList ПутьПараметраРеестра = "Control Panel\International"; ИмяПараметраРеестра = "sList"; Объект_РеестрWindows = ПолучитьCOMОбъект("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv"); Объект_РеестрWindows.GetStringValue("2147483649", ПутьПараметраРеестра, ИмяПараметраРеестра, Разделитель); Исключение Сообщить("Ошибка получения разделителя списка пользователя", СтатусСообщения.Важное); КонецПопытки; Возврат Разделитель; КонецФункции |
|||
|
7
b_ru
10.08.15
✎
00:58
|
(6) Не ну можно и так конечно, но есть варианты попроще. Хотя бы тут смотри: Книга знаний: Работа с реестром
|
| Форум | Правила | Описание | Секции | Поиск |