Для того чтобы приступить к защите программного обеспечения на платформе 1С:Предприятие необходимо:
Установка пароля на защищаемые модули.
Выберите пункт меню Текст – Установить пароль.
Это необходимо для компиляции исходного текста в опкод).
Можно установить любой пароль, только его необходимо запомнить.
В процессе установки защиты исходный текст модуля из результирующей конфигурации будет удалён. |
Сохранение библиотеки защиты.
Это необходимо для функционирования системы защиты.
Образ библиотеки рекомендуется сохранить в макете типа "Двоичные данные".
Установить систему защиты можно только при использовании операционной системы Windows. |
Создание функции GetUSBKeyComponentLocationV3.
Функция GetUSBKeyComponentLocationV3 не нужна, если не требуется процедура проверки ключа. |
Эта функция должна возвращать полное имя макета, в котором хранится образ библиотеки защиты, или полное имя файла библиотеки защиты.
Также можно использовать в макете zip архив с файлами библиотек и файлом манифеста.
Функция GetUSBKeyComponentLocationV3 вызывается однократно перед загрузкой библиотеки защиты.
// GetUSBKeyComponentLocationV3 // //Возвращаемое значение: // Строка, расположение компоненты защиты для текущего используемого типа платформы // Функция GetUSBKeyComponentLocationV3() МетаОбработки = Метаданные.Обработки.МатрицаРолейПользователей; Макет = ?(Макет = Неопределено, МетаОбработки.Макеты.Найти("КомпонентаЗащитыV3_Hasp_zip"), Макет); Макет = ?(Макет = Неопределено, МетаОбработки.Макеты.Найти("КомпонентаЗащитыV3_Guardant_zip"), Макет); Если Макет = Неопределено тогда СистемнаяИнформация = Новый СистемнаяИнформация; Если СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 тогда Постфикс = "Win32"; ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64 тогда Постфикс = "Win64"; ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86 тогда Постфикс = "Linux32"; ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86_64 тогда Постфикс = "Linux64"; КонецЕсли; Макет = ?(Макет = Неопределено, МетаОбработки.Макеты.Найти("КомпонентаЗащитыV3_Hasp_" + Постфикс), Макет); Макет = ?(Макет = Неопределено, МетаОбработки.Макеты.Найти("КомпонентаЗащитыV3_Guardant_" + Постфикс), Макет); КонецЕсли; Если Макет = Неопределено тогда ВызватьИсключение("Макет с образом компоненты защиты не найден"); КонецЕсли; Возврат Макет.ПолноеИмя(); КонецФункции |