Форум программистов, компьютерный форум, киберфорум
bedvit
Войти
Регистрация
Восстановить пароль

XLL хранение и выполнение VBA кода, или защита VBA кода от просмотра? (C/C++)

Запись от bedvit размещена 10.04.2022 в 17:51
Показов 1726 Комментарии 0
Метки c, c++

Инструмент позволяющий хранить VBA код в XLL и его выполнять.
Часть библиотеки BedvitXLL
Как работает: Сохраняем VBA-код в форме (см.скрин), делимся сохранением .bin с коллегами, заказчиками и т.д. (у них тоже должна стоять .xll). Они смогут использовать весь функционал, но не смогут посмотреть код без пароля.

Особенности:
+Загружаем код - с Option Explicit и другими операторами (загружаем весь модуль VBA)
+Код можно запускать прямо с главной панели (выбрав из списка нужный) или из формы загрузки
+Можно задавать пароль на просмотр (по умолчанию это слово "Пароль")
+Можно смотреть VBA-код, если знаешь пароль.
+Можно выполнять VBA-код, даже если не знаешь пароль.
+Код хранится зашифрованный в файле сохранения настроек библиотеки (BedvitXLL.bin).
+Пароль не хранится, а хранится его хеш
+VBA-код может загрузить любой пользователь и любой пользователь его использовать, при условии включенного доступа к объектной модели проектов VBA.
-пока работает только один модуль VBA
-выполняется только Sub() без аргументов, или с аргументами по умолчанию в качестве стартовой процедуры. В самом коде нет ограничений. Просто вызов с кнопки, аргументы сейчас не передаются. Но доработать можно при наличии интереса.
-нельзя использовать Function(), другими словами UDF.
-сейчас функционал скромный, обрисовал только концепцию.
-кнопка "сохранить в файл", "вывести в окно" для сохранения кода в формате С++(доп.функционал для автора, для пользователя не нужная)

BedvitXLL(v3.0.0.0) и выше
Миниатюры
Нажмите на изображение для увеличения
Название: VBAStorage2.PNG
Просмотров: 682
Размер:	57.8 Кб
ID:	7438   Нажмите на изображение для увеличения
Название: VBAStorage3.PNG
Просмотров: 621
Размер:	32.5 Кб
ID:	7439   Нажмите на изображение для увеличения
Название: VBAStorage4.PNG
Просмотров: 518
Размер:	62.1 Кб
ID:	7440  

Метки c, c++
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 0
Комментарии
 
Новые блоги и статьи
[golang] Pipeline
alhaos 08.06.2026
Pipeline Pipeline — паттерн конкурентной обработки данных в Go. Суть: данные проходят через цепочку независимых стадий, каждая из которых работает в своей горутине и общается с соседями через. . .
Свет внутри себя
kumehtar 07.06.2026
Пусть это будет здесь lIs4oanZS9Y
Программа для com-порта
Uhbif79 05.06.2026
Всем привет, давно хотел изучить Qt, начинал, бросал, потом снова начинал. И сейчас вот смог написать свою первую программу. До этого имел опыт программирования микроконтроллеров, писал прошивки на. . .
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений. . . .
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения Продолжаю серию постов о дискретно-событийной модели рабочего. . .
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru