Изменить уровень безопасности Excel, принудительно

Общие вопросы, не зависящие от языка реализации.

Модераторы: Duncon, Hawk, Romeo, Eugie

Ответить
Аватара пользователя
VictorM
Сообщения: 794
Зарегистрирован: 23 окт 2006, 01:44
Откуда: Lugansk, Ukraine
Контактная информация:

Здравствуйте, Господа программисты!
Вопрос возможно ламерский, поэтому прошу сразу не пинать. ;) С соседнем разделе нашего форума MS Office и VB(A) уже вторую неделю обсуждается вопрос http://forum.developing.ru/showthread.php?t=13414 и вот зашли в тупик. Всю преамбулу излагать не буду, конкретный вопрос:
можно ли в автозапуск системы поместить "бяку", которая будет изменять значение в системном реестре, отвечающее за уровень безопасности Excel?
в реестре в ветке: HKCU\Software\Microsoft\Office\11.0\Excel\Security
Параметр Dword "Lavel"
Если этот параметр установлен в 1 (там от 1 до 4) то защита от макросов отключена.
А может есть другие идеи?
Спасибо.
"Дайте людям рыбы, и вы накормите их на весь день;
научите их ловить рыбу - и вы накормите их на всю жизнь".
BBB
Сообщения: 1298
Зарегистрирован: 27 дек 2005, 13:37

Изменить значение реестра из своей программы - это пара пустяков. Тем более, в "Current Users". Тут, насколько я понимаю, даже особых прав для текущего пользователя не надо иметь.
Аватара пользователя
VictorM
Сообщения: 794
Зарегистрирован: 23 окт 2006, 01:44
Откуда: Lugansk, Ukraine
Контактная информация:

BBB, а можно подорбнее про
Изменить значение реестра из своей программы - это пара пустяков
:confused: ситуация усложняется тем, что желательно это изменение производить каждый раз, непосредственно перед запуском Excel ;)
"Дайте людям рыбы, и вы накормите их на весь день;
научите их ловить рыбу - и вы накормите их на всю жизнь".
BBB
Сообщения: 1298
Зарегистрирован: 27 дек 2005, 13:37

VictorM писал(а):BBB, а можно подорбнее про
Если из C++, то c помощью ф-ий:
RegCreateKeyEx
RegSetValueEx

Если из Delphi, то можно также с помощью класса TRegistry
ситуация усложняется тем, что желательно это изменение производить каждый раз, непосредственно перед запуском Excel ;)
Запускать Excel через bat или cmd -файл, где первым путктом идет установка значения в регистре, а вторым - собственно запуск Excel.

Правда, я не пойму, если у вас кто-то таинственным образом постоянно изменяет это значение, то где гарантии, что даже после такого запуска (изменение значения в реестре, казалось бы, "непосредственно" перед запуском Excel) этот таинственный кто-то вновь не изменит значение. Т.е. сформулируем вопрос так: установка (вновь и вновь) значения реестра С КАКОЙ ЧАСТОТОЙ даст вам гарантию, что Excel будет отрабатывать так, как Вам надо? И есть ли такая гарантия вообще?
Аватара пользователя
Mint86
Сообщения: 127
Зарегистрирован: 04 мар 2008, 11:47

&quot писал(а):Т.е. сформулируем вопрос так: установка (вновь и вновь) значения реестра С КАКОЙ ЧАСТОТОЙ даст вам гарантию, что Excel будет отрабатывать так, как Вам надо? И есть ли такая гарантия вообще?
Дело в том, что батник должен запускаться непосредственно перед запуском определенного файла Excel. Т.е. чтобы данный файл не запускался без запуска батника, или если даже запускался то только после запуска батника. А то что юзер может изменить значение реестра после запуска батника никакой роли не играет, так как чтобы найти пароль ему все равно придется перезапустить данный файл. А при перезапуске обратно сработет батник.
Ответить