|
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 3
|
|||||||||||||||||||||
Mscal.ocx не удается зарегестрировать в references27.03.2011, 23:24. Показов 7013. Ответов 4
Метки нет (Все метки)
Добрый день.
Встала задача прикрутить к excel вызов всплывающего календаря. Задача осложняется, что приложение должно работать на компьютерах с различными версиями офиса, а mscal (файл с компонентом сalrndar control) по умолчанию может не установится.Все зависит от версии office и того какие приложений из пакета office устанавливаются. В теории, можно действовать двумя способами: 1. Проверять есть ли компонент календаря на данном компьютере. И если нет, то отключать весь функционал связаный со всплывающим календарем. Тут возникает проблема с тем, что соответствующий код требует разрешить макросам доверенный доступ к элементам VBA (не дословно, но суть примерно такая). Мне бы не хотелось так делать, так как это создает потенциальные риски в безопасности. 2. Сделать сетап файл и устанавливать компонент (если его еще нет) вместе с excel-евским файлом. Решил идти вторым путем. Создал с помощью inno setup установочный файл прописал там регистрацию компоненты календаря, но к сожалению она работает не всегда. Причем не ясно от чего это зависит. Казалось бы начальные условия установок одинаковы. Сетапник выполняет следующую команду:
Копирую файл mscal.ocx в system32 (WinXP, 32bit). Запускаю:
Далее удаляю компонент из ситемы(файл не трогаю):
После этого иногда получается заставить его работать если из меню Tools->References нажать Find и указать файл с календарем вручную. В связи со всем выше сказанным помогите найти ответы на несколько вопросов: Как правильно регистрировать и удалят references? Можно ли как-то проверить текущее состояние mscal.ocx - установлен или нет? Как можно гарантировать установку календаря?(в пределах естественных ограничений связанных с отсутствием прав и т.д.)
0
|
|||||||||||||||||||||
| 27.03.2011, 23:24 | |
|
Ответы с готовыми решениями:
4
Как отключить mscal.ocx? Ошибка MSCAL.OCX в office 2010
|
|
Частенько бываю
750 / 331 / 42
Регистрация: 20.06.2007
Сообщений: 854
|
|
| 28.03.2011, 05:06 | |
|
А не пробовали рыть в сторону написания собственного календарика? И включить его в проект VBA.
0
|
|
|
2786 / 718 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
|
||||||
| 28.03.2011, 10:38 | ||||||
|
Делаем установщик, работающий примерно по такому алгоритму:
1. Проверить регистрацию библиотеки календаря через наличие и целостность веток, ключей и значений в реестре. Инфа о COM-объектах в реестре хранится в где-то внутри HKEY_CLASSES_ROOT. Здесь также можно проверить наличие файла, что в принципе необязательно. 2. Если компонент не зарегистрирован, скопировать файл на новое место. При этом пути не должны быть жестко заданы, используйте переменные окружения, т.к. не у всех Windows установлена на диск C, и не у всех в папку с именем Windows. 3. Зарегистрировать файл в системе. Кроме непосредственно вызова команды надо как-то получить результат выполнения, чтобы в случае ошибки регистрации откатить все назад. Здесь надо или использовать regsvr32, либо напрямую делать API-вызовы, что немного сложней, но в принципе есть открытые исходники на тему. 4. Включить доверенный доступ к проектам VBA. Это всего 1 ключик в реестре, зависящий только от версии Excel, установленный в значение 1. Важно: всеэкземпляры Excel при этом должны быть закрыты, иначе не прокатит! Ключ реестра тут:
6. Снова закрыть Excel и отключить доверенный доступ к проектам VBA. Получается инсталлер будет отнюдь непростая программа. Времени отнимет массу. Из плюсов: потом основу этого инсталлера сможете использвать где угодно с той же целью.
0
|
||||||
|
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 3
|
|||
| 28.03.2011, 12:24 [ТС] | |||
![]() to Vlanib: Пытался найти готовый календарик с открытым кодом, но увы ничего рабочего так и не увидел. Если подскажете где можно скачать буду очень благодарен.
0
|
|||
|
2 / 2 / 2
Регистрация: 03.06.2013
Сообщений: 34
|
|
| 08.07.2013, 22:41 | |
|
Вот например
0
|
|
| 08.07.2013, 22:41 | |
|
Помогаю со студенческими работами здесь
5
Не удалось зарегестрировать URL Как правильно зарегестрировать домен? Зарегестрировать программу в меню пуск Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|