Предлагаем внешнюю компоненту для 1С, в которой реализовано несколько небольших, но очень полезных системных функций:
Имя метода | Описание |
Звук | Воспроизводит WAV-файл |
Пауза | Приостанавливает выполнение текущего потока |
ПереключитьРаскладкуКлавиатуры | Переключает раскладку клавиатуры |
ПолучитьСписокРаскладокКлавиатуры | Возвращает доступные коды раскладок клавиатуры |
ПоместитьВБуферОбмена | Помещает строку в буфер обмена |
ПолучитьИзБуфераОбмена | Получает строку из буфера обмена |
Разрядность | Возвращает тип запущенного процесса (32 или 64) |
ПолучитьИдентификаторТекущегоПроцесса | Возвращает PID процесса 1С |
ПолучитьВерсиюФайла | Возвращает версию файла в виде xx.xx.xx.xx |
Компонента выполнена по технологии Native API, предназначена для 1С от версии 8.2.9.356 и выше (8.2 и 8.3 любых версий) для ОС Windows x32 и x64.
Работает с веб-клиентом в браузерах Firefox и Google Chrome (для версии платформы 1С 8.3.6.2152 и выше).
Нужны еще функции? Пишите в комментариях, рассмотрим…
Содержание архива:
1. Компонента
2. Исходники С++ (проект VisualStudio)
3. Тестовая конфигурация
Описание методов компоненты
Звук (PlaySound)
Вариант синтаксиса: по имени файла
Синтаксис:
Звук(<ИмяФайла>)
Параметры:
<ИмяФайла>
Тип: Строка
Воспроизводит указанный WAV-файл. Если <ИмяФайла> не указано или равно пустой строке, тогда останавливает текущее воспроизведение.
Вариант синтаксиса: по двоичным данным
Синтаксис:
Звук(<ДвоичныеДанные>)
Параметры:
<ДвоичныеДанные>
Тип: ДвоичныеДанные
Воспроизводит WAV-файл, помещенный в <ДвоичныеДанные>.
Вариант синтаксиса: без параметров
Синтаксис:
Звук()
Останавливает текущее воспроизведение
Возвращаемое значение:
Тип: Булево
Истина – если удалось воспроизвести файл, Ложь – если возникла ошибка.
Описание:
Воспроизводит WAV-файл с помощью функции WinAPI sndPlaySound()
Пауза (Sleep)
Синтаксис:
Пауза(<КоличествоМиллисекунд>)
Параметры:
<КоличествоМиллисекунд>(обязательный)
Тип: Число
Описание
Приостанавливает выполнение текущего потока на указанное количество миллисекунд с помощью функции WinAPI Sleep()
ПереключитьРаскладкуКлавиатуры (ActivateKeyboardLayout)
Синтаксис:
ПереключитьРаскладкуКлавиатуры(<КодРаскладки>)
Параметры:
<КодРаскладки>(обязательный)
Тип: Строка
Описание
Переключает раскладку клавиатуры с помощью функции WinAPI ActivateKeyboardLayout()
ПолучитьСписокРаскладокКлавиатуры (GetKeyboardLayoutList)
Синтаксис:
ПолучитьСписокРаскладокКлавиатуры()
Возвращаемое значение:
Тип: Строка
Доступные коды раскладок клавиатуры (через разделитель «;»)
Описание
Возвращает доступные коды раскладок клавиатуры с помощью функции WinAPI GetKeyboardLayoutList()
ПоместитьВБуферОбмена (SetClipboardData)
Синтаксис:
ПоместитьВБуферОбмена(<Текст>)
Параметры:
<Текст>(обязательный)
Тип: Строка
Описание
Помещает текст в буфер обмена (используя формат CF_UNICODETEXT)
ПолучитьИзБуфераОбмена (GetClipboardData)
Синтаксис:
ПолучитьИзБуфераОбмена()
Возвращаемое значение:
Тип: Строка
Описание
Возвращает текст из буфера обмена (используя формат CF_UNICODETEXT)
Разрядность (Bits)
Синтаксис:
Разрядность()
Возвращаемое значение:
Тип: Число
Описание
Возвращает 32 или 64 в зависимости от типа запущенного процесса 1С.
GetCurrentProcessId (ПолучитьИдентификаторТекущегоПроцесса)
Синтаксис:
ПолучитьИдентификаторТекущегоПроцесса()
Возвращаемое значение:
Тип: Число
Описание
Возвращает PID процесса 1С с помощью функции WinAPI GetCurrentProcessId().
ПолучитьВерсиюФайла (GetFileVersion)
Синтаксис:
ПолучитьВерсиюФайла(<ИмяФайла>, <Версия>, <Подверсия>, <Релиз>, <Сборка>)
Параметры:
<ИмяФайла>(обязательный)
Тип: Строка
<Версия>(необязательный)
Тип: Число
<Подверсия>(необязательный)
Тип: Число
<Релиз>(необязательный)
Тип: Число
<Сборка>(необязательный)
Тип: Число
Возвращаемое значение:
Тип: Строка
Описание
Возвращает версию файла в виде строки x.x.x.x, а также составные части версии в параметрах <Версия>, <Подверсия>, <Релиз>, <Сборка>
а сама 1С этого всего не умеет и наконец дожили до модных времен — звук и буфер обмена теперь через ВК?
(1)
Они говорят что нам это не нужно
(2) Кто они — рептилоиды?
в буфер можно вот так копировать
HTMLОбъект = Новый COMОбъект(«htmlfile»);
HTMLОбъект.ParentWindow.ClipboardData.Setdata(«Text», СокрЛП(Объект.Номер));
(3) Вендор.
Темы про звук, паузу были на партнерке не однократно и заканчивались словами: «Вам это не нужно»
(5) Все верно — нам это не нужно.
нам нужно чтобы месяц закрывался без проблем и первичка проводилась без глюков.
нам даже котик не нужен, но пусть останется — просто он терпеливо слушает все, о чем ему говорят пользователи и при этом по-барски зевает.
Если подключить к 1С .NET по методу Сергея Смирнова, то расширять функционал использования .NET можно будет прямо из 1С, не меняя ВК.
Например, текущая раскладка:
Раскладка = бокм_Общие.ПолучитьNET().GetType(«System.Windows.Forms.InputLanguage», «System.Windows.Forms»);
индекс = ВРег(Раскладка.CurrentInputLanguage.Culture.TwoLetterISOLanguageName);
или буфер обмена:
л_БуферОбмена = ПолучитьNET().ПолучитьТип(«System.Windows.Forms.Clipboard», «System.Windows.Forms»);
Возврат л_БуферОбмена.GetText();
л_БуферОбмена = ПолучитьNET().ПолучитьТип(«System.Windows.Forms.Clipboard», «System.Windows.Forms»);
л_БуферОбмена.SetText(п_ТекстБуфера);
и пр.