Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2012, 11:29   #1
darthraziel
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 24
По умолчанию Переделка XLAM надстройки для Excel в COM/XLL надстройку, Минск

Есть функционирующая надстройка для экселя, написанная на VBA и включающая в себя некоторое количество пользовательских функций, пару форм и лист эксель с данными, с которыми эти функции оперируют.

Необходимо закрыть доступ к коду макросов и данным, находящимся на листе, и оставить при этом возможность дальнейшего обновления этих данных.

Минск. Цена договорная.
darthraziel вне форума Ответить с цитированием
Старый 26.10.2012, 12:11   #2
CrazyDave
Новичок
Джуниор
 
Регистрация: 09.10.2011
Сообщений: 0
По умолчанию

могу сделать есть опыт, аська 411-886-702
CrazyDave вне форума Ответить с цитированием
Старый 26.10.2012, 14:10   #3
AbakBarama
Пользователь
 
Регистрация: 12.05.2011
Сообщений: 57
По умолчанию

Цитата:
Сообщение от darthraziel Посмотреть сообщение
Необходимо закрыть доступ к коду макросов и данным
Надежно не закроете. В интернете куча утилит, сбрасывающих пароль на VBA. Снять атрибут xlSheetVeryHidden - тоже не проблема.
AbakBarama вне форума Ответить с цитированием
Старый 26.10.2012, 14:16   #4
darthraziel
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 24
По умолчанию

Цитата:
Сообщение от AbakBarama Посмотреть сообщение
Надежно не закроете. В интернете куча утилит, сбрасывающих пароль на VBA. Снять атрибут xlSheetVeryHidden - тоже не проблема.
Безусловно, поэтому я и указал в названии темы предпочтительный вариант решения - создание COM или XLL надстройки, в которых код хранится в скомпилированном виде.
darthraziel вне форума Ответить с цитированием
Старый 30.10.2012, 14:50   #5
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

А как вы собираетесь хранить внутри COM надстройки лист Excel с данными?

PS: Пароль на VBA снять, конечно, не проблема.
Но можно сделать и так, чтобы пароль просто было не ввести (будет выводиться сообщение Project is unviewable)


PPS: Не вижу смысла в подобной защите кода.
Неужто все хакеры мира ориентированы на взлом вашей надстройки?
EducatedFool вне форума Ответить с цитированием
Старый 30.10.2012, 18:43   #6
darthraziel
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 24
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
А как вы собираетесь хранить внутри COM надстройки лист Excel с данными?
Предполагается вынести данные в отдельный файл.


Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Пароль на VBA снять, конечно, не проблема.
Но можно сделать и так, чтобы пароль просто было не ввести (будет выводиться сообщение Project is unviewable)
ОК, а как Вы предлагаете это сделать? Через общий доступ, что геморно и ненадежно? Я, ввиду ограниченности своего опыта, другого варианта не нашел.


Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Не вижу смысла в подобной защите кода.
Неужто все хакеры мира ориентированы на взлом вашей надстройки?)
У такой реализации надстроек с функциями есть и другие плюсы, например, в отличие от стандартной XLAM надстройки любое использование пользовательской функции не будет считаться абсолютной ссылкой на внешний файл, что не очень удобно при работе нескольких пользователей с одним документом.

Безусловно, предложенный мной вариант - лишь вариант, и если кто-то видит более оптимальный способ реализации изложенной задачи, я открыт для предложений.
darthraziel вне форума Ответить с цитированием
Старый 31.10.2012, 14:00   #7
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

> ОК, а как Вы предлагаете это сделать? Через общий доступ, что геморно и ненадежно?

Не, все намного проще.
Есть специальная программа - называется ProtectVBA
Скачать её можно у меня на сайте:
http://excelvba.ru/soft/VBE
EducatedFool вне форума Ответить с цитированием
Старый 31.10.2012, 18:31   #8
darthraziel
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 24
По умолчанию

>Не, все намного проще.
>Есть специальная программа - называется ProtectVBA
>Скачать её можно у меня на сайте

Спасибо за совет. Это, конечно, полумера, не дающая ни одного из плюсов COM-надстройки, но, быть может, в какой-то степени весьма и весьма действенная.
А насколько хорошо такой способ, по Вашему, будет защищать от просмотра и изменения данные, хранящиеся в надстройке (что, на самом деле, более приоритетно, чем защита кода простейших макросов)?
darthraziel вне форума Ответить с цитированием
Старый 31.10.2012, 18:45   #9
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Ну а что спрашивать?
Вот скройте листы файла Excel (сделав из него надстройку), поставьте защиту таким образом, - и попробуйте отобразить листы.
Получится - ну, значит, плохая защита.

Если открывать такой файл в OpenOffice - там всё видно будет, - и код, и листы.
Так что защита не универсальная.
EducatedFool вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Надстройки Excel Skif-F Microsoft Office Excel 8 29.10.2017 05:11
Надстройка DLL (XLL) с формой для Excel (без VBA) Louken Microsoft Office Excel 6 09.10.2012 20:04
(C#/.NET) Дописать надстройку для Excel vladislav123 Фриланс 2 16.07.2011 21:04
Надстройки Excel Skif-F Microsoft Office Excel 10 15.07.2010 17:20