Предоставление автоматизации для окон

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

Автоматизация для окон инструментов

Среда обеспечивает автоматизацию в окне инструментов, возвращая стандартный Window объект, как описано в следующей процедуре:

  1. GetProperty Вызовите метод через среду с __VSFPROPID. VSFPROPID_ExtWindowObject в качестве VSFPROPID параметра, чтобы получить Window объект.

  2. Когда вызывающий запрос запрашивает объект автоматизации для конкретного окна инструментов ObjectVSPackage, среда вызывает QueryInterface или IExtensibleObjectIVsExtensibleObjectIDispatch интерфейсы. Оба IExtensibleObject метода и IVsExtensibleObject предоставьте GetAutomationObject метод.

  3. Когда среда вызывает передачу GetAutomationObjectNULLметода, отвечайте, передавая объект VSPackage.

  4. Если вызов и IExtensibleObjectQueryInterfaceIVsExtensibleObject сбой, среда вызывается QueryInterfaceIDispatch.

Автоматизация для окон документов

Стандартный Document объект также доступен из среды, хотя редактор может иметь собственную реализацию Document объекта, реализуя интерфейс и отвечая IExtensibleObject на GetAutomationObjectних.

Кроме того, редактор может предоставить объект автоматизации для VSPackage, полученный с помощью Object метода, реализуя IVsExtensibleObject или IExtensibleObject интерфейсы. Примеры VSSDK способствуют объекту автоматизации ДЛЯ RTF для конкретного документа.