Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Безопасность проекта
 
Если не тайна, то в общих чертах поделитесь вашей идеей, очень интересно. Пока не сталкивался с обманом, но если есть вариант предусмотреть, то было бы полезно
Цифровая подпись файла надстройки, Excel блокирует VBA подписанного файла надстройки .xlam
 
Цитата
написал:
Попробуйте сертификат в Trusted Publisher (Доверенные издатели) положить.
опс, незаметил эту реплику... Сертификат и в "доверенных издателях", и в "Доверенных корневых центрах сертификации", и в "личных" лежит
Цифровая подпись файла надстройки, Excel блокирует VBA подписанного файла надстройки .xlam
 
К слову, если будет желание поупражняться, прилагаю выпущенные на вскидку в OpenSSL сертификат, как пример:
cert.crt - сертификат с открытым ключом, его можно ставить на машину пользователя, чтобы офису было с чем сравнивать подпись,
cert.pfx - это сертификат с прикрученным к нему намертво закрытым ключом, с его помощью можно подписывать файлы,
private.key - это собственно файл с закрытым ключём... в общем он нужен для того, чтобы pfx собирать из crt + key.
Пароль для доступа к закрытому ключу: 12345

Файлы затолкал в незапароленный архив, т.к. сами файлы напрямую не прикручиваются к сообщению.. пишет "Неверный тип файла (crt)" и т.п.

Вызов приблуды для управления сертификатами пользователя: Win+R, certmgr.msc
Цифровая подпись файла надстройки, Excel блокирует VBA подписанного файла надстройки .xlam
 
В свойствах сертификата имеется галочка "Подписывание кода". Без неё я не мог бы подписать проект, а он, вроде как подписан :(
Цифровая подпись файла надстройки, Excel блокирует VBA подписанного файла надстройки .xlam
 
При создании сертификата - можно указать срок годности сертификата в днях, я на вскидку создал сертификат на 100'000 дней (вышло около 2299 года)... потом остановился на сроке до 1.01.2035 года... В общем "срок" в этом вопросе - проблемой не является.
Цифровая подпись файла надстройки, Excel блокирует VBA подписанного файла надстройки .xlam
 
Необходимый сертификат легко устанавливается на компьютеры где будет использоваться моя надстройка 1 раз. Далее все мои макросы/надстройки, по идее (!), должны запускаться без проблем при условии, что Excel доверяет подписанным файлам.

На данный момент, эта идея не кажется мне чрезмерно сложной и хотелось бы её попытаться реализовать.
Изменено: Махмуд - 23.03.2025 16:09:44
Цифровая подпись файла надстройки, Excel блокирует VBA подписанного файла надстройки .xlam
 
Добрый день, помогите пожалуйста люди добрые!

Не могу заставить работать свою надстройку с цифровой подписью согласно настроек безопасности :( "Отключить макросы VBA, кроме макросов с цифровой подписью".

Изготовил файл надстройки .xlam, подписал его цифровой подписью по лицензии которую выпустил для себя сам, с помощью OpenSSL (DeepSeek научил этому непотребству).

Лицензию положил и в раздел "Личные", и в раздел "Доверенные корневые центры сертификации", закрытый ключ с паролем в наличии.

Подписал встроенным средством "VBA - Tools - Digital Signature..."

Если xlam лежит ВНЕ "Надёжного расположения" - то его содержимое VBA недоступно, вопреки обещаниям настроек безопасности.

Может кто-нибудь знает, как эту беду побороть? Я уже пробовал и через PowerShell подписвывать и Windows SDK ставил, чтобы signtool использовать (оказалось, он непригоден)...

Microsoft Office LTSC профессиональный плюс 2021
Windows 10
Как получить ссылку на открытый файл с установленным isAddin = True?
 
Спасибо большое!
Как получить ссылку на открытый файл с установленным isAddin = True?
 
Подскажите пожалуйста, как можно получить ссылку на книгу, которую я открыл и установил свойство workbook'а isAddin = True?
Если открыта книга со свойством isAddin = True, я не могу открыть другую книгу с таким именем... хотелось бы перед открытием проверить уже открытые
Моя надстройка рушит Excel, Помогите решить проблему
 
Цитата
написал:
Пускай кто нибудь проверит с 64 разрядным офисом
Так вот собственно я на х64 и проверил, на нескольких разных машинах с разными офисами - 2016, 2019, 2021 - падает. А у Вас, на х32 похоже не падает :)
Спасибо большое, за помощь.
Пожалуй тема исчерпана.
Моя надстройка рушит Excel, Помогите решить проблему
 
Цитата
написал:
2010 32 Глюк не воспроизводится.
Похоже я нашёл в чём проблема.

При активации формы фокус передаётся на поле в котором можно ввести цену и при этом вызывается дропдаун для одного из comboBox.
При этом после ввода цифры и нажатия на ENTER список comboBox не закрывается и запускается "unload" формы, с открытым выпадающим списком.
Из-за этого после закрытия формы, через несколько секунд и происходит падение excel.

Я дико извиняюсь, но не могли бы вы подтвердить, что при проверке у вас тоже открывается тот самый нижний правый comboBox с "вариантами реквизитов..."?
Просто если нажать на кнопку "Ввести в документ" кликом мыши - то comboBox закроется и проблем не будет, но если нажать после ввода цены Enter - Excel упадёт.
Моя надстройка рушит Excel, Помогите решить проблему
 
Цитата
написал:
в первом приближении нужно просто указать модуль и процедуру которая начинает обработку этого.
Процедура "Обновить всё" запускается из модуля MF_SQIS_Ribbon_Exec_2_PEO, называется RefreshAllClick
Процедура "Ввести"  запускается из модуля MF_SQIS_Ribbon_Exec_2_PEO, называется InputPriceClick


Цитата
написал:
возможно проблема в приложении, или операционной системе, ведь библиотеки общие.....
Проблема воспроизводится на 4х компьютерах, все на windows 10 и home и pro с последними обновлениями, опробованы версии Excel:
1. Microsoft Excel 2016 (16.0.5478.1002) MSO (16.0.5478.1000), 64 - разрядная версия,
2. Microsoft Excel 2016 (16.0.4266.1001), 64 - разрядная версия,
3. MS Excel LTSC MSO (16.0.14332.20824), 64 - разрядная версия

PS: что-то с цитированием как-то неудобно выходит, пропадает ссылка на цитируемого :(
Изменено: Махмуд - 15.01.2025 11:38:53 (PS)
Моя надстройка рушит Excel, Помогите решить проблему
 
Цитата
написал:
2010 32 Глюк не воспроизводится.
Спасибо большое!
Моя надстройка рушит Excel, Помогите решить проблему
 
Цитата
написал:
Может как автор вы прямо скажете что запускается в этот момент, чтоб посмотреть код , а не проделывать все действия?
В первом приближении наверное происходящее можно описать примерно так:

На "Обновить всё" происходит проверка данных в каждой строке с данными:
1. Если не открыт, то открывается только для чтения файл СПКС_БДО.xlsx (таблица с наименованиями оборудования, далее БДО)
2. Если не открыт, то открывается только для чтения файл СПКС_БДЦ.xlsx (таблица с ценами, далее БДЦ)
(если БДО или БДЦ открыты, но запомненная дата их последнего изменения при предыдущем обращении не совпадает с текущей датой записи файла, то файлы закрываются и открываются по новой)
3. Содержимое ячеек листа "Номенклатура" из файла "Падающий.xlsx" (далее "номенклатура") в столбцах от B до F по коду из столбца A сверяется с данными листа "База" из файла "БДО"
4. Содержимое ячеек "номенклатуры" в столбцах от G до J по коду из столбца A сверяется с данными листа "База" из файла "БДО"
Данные которые в "падающем" отличны от данных хранящихся в БДО и БДЦ подсвечиваются цветом и дополняются соответствующим комментарием.
5. Комментарием к ячейке цены каждой строки вводятся данные о последних трёх ценах (с реквизитами - датой, номером и поставщиком коммерческого предложения)

На "Внести" производится ввод данных в "номенклатуру", а затем запускается "Обновить всё":
1. В ячейки текущей выбранной строки вносятся "номенклатуры" вписываются данные из формы
2. Запускается "Обновить всё"
Моя надстройка рушит Excel, Помогите решить проблему
 
Добрый день!

Делаю надстройку для Excel и внезапно обнаружилось, что наколдовано в ней слишком сильно.
Хочу найти причину внезапного вылета Excel.
Уверен что что-то делаю не так, но не могу найти что именно.
Помогите пожалуйста!

Воспроизведение глюка:

Содержимое приложенного архива необходимо расположить на диске: "D:\СПКС\"
Можно изменить расположение подправив пару адресов в ini файле расположенном в папке с надстройкой

Последовательность действий приводящих к падению Excel:
1. Запускаем надстройку
2. На вкладке Спецификация ПЭО жмём "Открыть" - открываем файл "D:\СПКС\02_СПЕЦИФИКАЦИЯ_ОП\XLSX_SPEC\Падающий.xlsx"
3. На вкладке Спецификация ПЭО жмём "Обновить всё"
4. Выбираем строку № 6
5. На вкладке Спецификация ПЭО жмём "Внести" -> в поле "Цена" вводим: 11,11 и жмём Enter
После отработки функций в течении 3-4 секунд Excel аварийно закрывается ничего не говоря. Иногда перезапускаясь открывает "восстановленные" файлы
Если эффект не наступил, повторить операции 4 и 5 для строк 7, 8...

Если пропустить пункт 3 - вылет также произойдёт, но позже.

Кнопка "Открыть" вызывает: Sub OpenPEOfileClick
Кнопка "Обновить всё" вызывает: Sub RefreshAllClick
Кнопка "Ввести" вызывает: Sub InputPriceClick


На всех Excel до которых смог добраться проверил - всюду глюк воспроизводится:
  Microsoft Excel 2016 (16.0.5478.1002) MSO (16.0.5478.1000), 64 - разрядная версия
  Microsoft Excel 2016 (16.0.4266.1001), 64 - разрядная версия
  MS Excel LTSC MSO (16.0.14332.20824), 64 - разрядная версия

Пробовал экспортировать код модулей и форм, пересоздавать файл надстройки, увы, результата не добился.
Страницы: 1
Наверх