Подпишите проект / файл Word VBA через командную строку или другой способ автоматизации - PullRequest
12 голосов
/ 11 марта 2010

Есть ли способ автоматизировать подписывание кода проекта VBA в документе Word 2003 и / или Word 2007?

Под автоматизацией я подразумеваю утилиту командной строки или автоматизацию Word VBA?

Мотивация. Я хотел бы написать несколько шаблонов Word в рамках автоматизированного ежедневного цикла сборки и распространения. Прямо сейчас мы должны сделать это вручную, открыв каждый документ в Word и подав в отставку.

Спасибо, Malcolm

Ответы [ 3 ]

2 голосов
/ 11 марта 2010

Я никогда не видел способ сделать это. Несколько лет назад у меня была автоматическая сборка шаблона, и в конце я открыл окно с сообщением: «Вы должны пойти подписать шаблон сейчас», а затем открыл для них VBA. Я просто говорю, что чувствую твою боль.

0 голосов
/ 15 марта 2010

Это может стоить посмотреть: http://winbatch.com/

0 голосов
/ 11 марта 2010

Я не верю, что существует автоматизированный способ сделать это, потому что это нанесло бы ущерб безопасности подписи кода Подписание проекта VBA.

Два дайджеста сообщений сравниваются, и если какая-либо часть файла была модифицированные или поврежденные, дайджесты не будет совпадать и содержимое файлу нельзя доверять процесс проверки не удастся независимо от того, как файл был модифицировано - либо через коррупцию, макровирус или программные изменения сделано с помощью надстройки или решения Office. Процесс проверки также будет не удалось, если файл не был подписан с действующий сертификат; то есть если срок действия сертификата истек или был подделан, изменен или поврежден. Если другой пользователь изменяет проект VBA, приложение Office 2000 удаляет текущая подпись и подсказывает пользователь повторно подписать проект VBA; если пользователь не подписывает проект VBA или подписывает его другим сертификатом, файл может не пройти проверку процесс.

Вставлено из http://msdn.microsoft.com/en-us/library/aa190113(office.10).aspx

Подписание кода имеет дополнительный уровень безопасности в том смысле, что разработчик должен компилировать исходный код. Макрос не компилируется и может распространяться как текст. Следовательно, автоматизация подписывания макросов открыла бы большую дыру в безопасности. Подписание макроса вручную аналогично Outlook, запрашивая у пользователя программный доступ к адресной книге.

...