Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: 1С для программиста

  Все выпуски  

RFpro.ru: 1С для программиста


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты по данной тематике

Vasiliy83
Статус: Профессионал
Рейтинг: 2304
∙ повысить рейтинг »
Лиджи-Гаряев Владимир
Статус: Профессионал
Рейтинг: 1348
∙ повысить рейтинг »
Владимир Лазурко
Статус: Профессор
Рейтинг: 1024
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / 1С:Предприятие для программиста

Номер выпуска:1179
Дата выхода:22.12.2011, 07:30
Администратор рассылки:Владимир Лазурко (Профессор)
Подписчиков / экспертов:221 / 100
Вопросов / ответов:1 / 1

Консультация # 184821: Здравствуйте! Прошу помощи в следующем вопросе: Как написать функцию ВинВДос(), которая на входе получает путь в Вин формате, а на выходе выдает этот путь в ДОС формате Платформа 7.7 и 8.2 отдельно Это нужно для обработки, которая при открытии конфигурации создает смд файл Файл проверяет, есть ли уже архив, работает ли кто в конф, и соз...


Консультация # 184821:

Здравствуйте! Прошу помощи в следующем вопросе:
Как написать функцию ВинВДос(), которая на входе получает путь в Вин формате, а на выходе выдает этот путь в ДОС формате
Платформа 7.7 и 8.2 отдельно
Это нужно для обработки, которая при открытии конфигурации создает смд файл
Файл проверяет, есть ли уже архив, работает ли кто в конф, и создает либо архив (если его нет на дату) либо ФайлОшибки, в котором описан виновник невозможности создать архив
Обработка следит за архивами, удаляет ненужные, если в настройке указаны месяц=3, год=4, то удаляет архивы старше 4 лет и оставляет только по 1 архиву в месяц старше 3 месяцев
Создает нтм страницу со списком архивов или ФайлОшибок

Дата отправки: 17.12.2011, 06:48
Вопрос задал: Пресняков Владимир Иванович (Посетитель)
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Тимошенко Дмитрий (Практикант):

Здравствуйте, Пресняков Владимир Иванович!

Резюмирую минифорум:
При создании CMD-файла следует учесть две возможные проблемы:
1. Пробелы в длинных именах путей и файлов.
2. Русские буквы в них же.
Первая проблема решается тривиально - можно постараться избежать пробелов в путях файлов, или если это невозможно, в большинстве случаев достаточно заключить путь с пробелами в кавычки. Например "C:\Мои документы\мой архив.zip".
Вторая проблема заключается в кодировке русских букв: командный интерпретатор использует по-умолчанию кодовую страницу 866, а 1С для текстовых файлов - кодовую страницу 1251. Соответственно для решения проблемы нужно согласовать эти кодовые страницы, или не использовать русские буквы при именовании путей и файлов.
Простейший вариант применить метод КодоваяСтраница(1) перед записью файла в 1С. В этом случае файл будет записан в кодировке DOS и будет работать правильно. Также для перекодировки строк "туда и обра тно" 1С 7.7 (в 8-й версии отсутствуют) имеет две функции: AnsiToOEM(Строка) и OEMTOAnsi(Строка), которые переводят Строку из WIN-кодировки в DOS и наоборот, соответственно.
Другим способом является переключение кодовой страницы интерпретатора командой CHCP 1251. Т.е. первой командой CMD файла должна быть CHCP 1251, а затем остальные команды. Т.о. интерпретатор начинает понимать русские пути и имена в кодировке Windows, что и требуется. (Проверял в Windows XP, есть информация что в Windows 7 такой подход влияет только на отображение текста, а имена файлов все-равно нужно писать в кодировке 866).
Ну вот вроде и все.

С уважением, Дмитрий.

Консультировал: Тимошенко Дмитрий (Практикант)
Дата отправки: 20.12.2011, 20:25
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!



В избранное