Назад | Перейти на главную страницу

Код ошибки OLE 0x800704ec: эта программа заблокирована групповой политикой. Использование COM в VFP9

Краткое описание системы: Server 2008 SP2 x86 с запущенными службами терминалов в домене Windows.

Недавно я переместил свою рабочую среду на новый сервер. Я кодирую Visual Fox Pro 9 в системе, описанной выше. Раньше я работал на терминальном сервере Windows 2003. С тех пор, как я перешел на сервер 2008 года, у меня возникла проблема, которая полностью меня озадачила. Для некоторых программ, которые я пишу, я загружаю экземпляр Excel 2007 через COM. Проблема в том, что случайно я столкнусь с тем, что экземпляр excel не может инициализироваться с этим сообщением об ошибке «Код ошибки OLE 0x800704ec: эта программа заблокирована групповой политикой. Для получения дополнительной информации обратитесь к системному администратору.». Проблема возникает случайно. Кажется, есть какой-то временной фактор, потому что, если я немного подожду, проблема исчезнет, ​​и моя программа снова будет работать, как задумано. Мне также повезло с запуском gpupdate, но это не гарантия того, что это устранит ошибку. Мне действительно кажется странным, что я всегда могу без ошибок запускать Excel через оболочку Windows.

Я сделал следующие шаги:

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

Наконец, для справки я приложу снимок экрана с ошибкой.

Обновить:

Я нашел интересную информацию. Я наконец получил попадание в журнал SRP, который показал блокировку Excel. Я нашел правило блокировки по GUID в улье HKCU. Вот где я снова попал в тупик. Правило блокировки - это разрешающее правило! Вот скриншоты моих исследований.

Журнал SRP, который показывает, что Excel заблокирован, а также разрешен.

Значения реестра HKCU для правила блокировки

Детали правила SRP, содержащиеся в групповой политике

Недавно у нас возникла эта проблема с поставщиком медицинских услуг, которым мы управляем. Их программное обеспечение для управления пациентами имеет функцию «слияния писем» с Word. Примерно через две недели после сбоя хранилища, потребовавшего восстановления резервной копии базы данных программного обеспечения, нам позвонили и сообщили, что они получают эту ошибку всякий раз, когда они «объединяются с Word»:

Также было DCOM Event 10000, генерируемое с первой ошибкой за день (сервер перезагружается каждую ночь) ...

Unable to start a DCOM Server: {000209FF-0000-0000-C000-000000000046}. The error:
"1260"
Happened while starting this command:
"C:\Program Files (x86)\Microsoft Office\Office14\WINWORD.EXE" /Automation -Embedding

У них нет программных ограничений в групповой политике. Это не групповая политика. Попробовав все, вплоть до полного удаления / переустановки Office 2010 и стороннего программного обеспечения, я наконец нашел решение, по крайней мере для меня ...

  1. Откройте службы компонентов (32-разрядная версия), запустите: mmc comexp.msc /32
  2. открыто Службы компонентов> Компьютеры> Мой компьютер> Конфигурация DCOM.
  3. Щелкните правой кнопкой мыши Microsoft Word 97-2003 документ и выберите Свойства.
  4. Выберите Безопасность вкладка, затем Редактировать... под Разрешения конфигурации.
  5. Добавить СЕТЕВОЙ СЕРВИС с участием Полный контроль. Щелкните ОК.
  6. Под Идентичность вкладка выберите Интерактивный пользователь. Подать заявление. ХОРОШО.

Это устранило ошибку и позволило стороннему программному обеспечению успешно отправлять данные в Word.