Изграждане и импортиране на ActiveX контроли

ActiveX е технология, базирана на Component Object Model (COM). В допълнение към създаването на компоненти на WFC, Visual J + + се използва и за създаване и импортиране на ActiveX контроли. Тъй като ActiveX е изграден върху COM, вграждането на ActiveX в програма е толкова лесно, колкото и други COM обекти. Можете да създадете контроли за използване в други среди за разработка, като Microsoft Visual Basic или Microsoft Visual C ++, и да разширите възможностите на HTML страниците. Освен това можете да импортирате ActiveX контроли на трети страни, за да подобрите вашите WFC приложения. В тази глава ще научите:

  • как да създам ActiveX контрол от съществуващ WFC компонент;
  • как да импортирате ActiveX контроли във вашите WFC приложения.

Създаване на ActiveX контроли

Използвайки WFC компонентния модел, можете да създадете ActiveX контроли, които ще се използват в WFC приложения или други среди за разработка, които поддържат ActiveX. За да създадете ActiveX контрола от WFC контрола, регистрирайте WFC контролния клас като COM клас. След това поставете файла на класа в COM DLL и го регистрирайте като ActiveX контрола в системния регистър. Контрола, регистрирана като ActiveX контрола, е достъпна за клиента ActiveX.

Този пример използва елемента WFC, описан в раздела Създаване на контрол на глава 1, Създаване на проекти. Ако все още не е създаден, направете го и следвайте процедурите в този раздел. По-нататък ще научите:

  • Как да представим контрола на WFC като COM обект
  • Как да поставите контролата в COM DLL, така че други приложения да могат да го използват:
  • Как да регистрирам COM DLL като ActiveX контрола
  • Как да импортирате базирана на WFC ActiveX контрола в Visual Basic.

Забележка Последващите операции изискват проект на WFC компонент, отворен в Visual J ++.

Определяне на WFC контрол като COM обект

За да определите WFC компонент като COM обект:

    В менюто Проект изберете екип

Имоти (къде е името на вашия контролен проект).

  • В диалоговия прозорец Имоти щракнете върху раздела COM Classes.
  • В списъка с класове изберете класа на вашия контрол.
  • Щракнете върху бутона Настроики.
  • Този артикул не е задължителен. В диалоговия прозорец Опции на библиотеката с типове променете името на създадения файл на библиотеката на типове, за да дефинирате интерфейса с контролата, името на библиотеката, името на контролата, под която се вижда в средата за разработка, и помощния файл информация и щракнете върху Добре.
  • В диалоговия прозорец Имоти щракнете добре.
  • Забележка Ако не е необходимо да дефинирате няколко класа като COM, тогава COM класът може да бъде дефиниран в диалоговия прозорец Свойства на класа. За да се покаже този диалогов прозорец, щракнете с десния бутон върху името на класа в Class Outline и изберете командата от менюто Свойства на класа. В диалоговия прозорец, който се появява, поставете отметка в квадратчето COM Class.

    Хостинг на контрола в COM DLL

    След като контролът WFC е дефиниран като CQM обект, не забравяйте да поставите файловете с клас на контрол в COM DLL файла. Това е необходимо, за да може контролата да бъде налична като ActiveX контрола. COM DLL осигурява интерфейс, използван от ActiveX клиенти за достъп до контрола и неговите компоненти.

    Забележка За да разпространявате ActiveX контроли през Интернет, можете да ги поставите в CAB файл, а не в COM DLL.

    За да създадете контрола като COM DLL:

      В менюто Проект изберете екип

    Имоти (къде е името на вашия контролен проект).

  • В диалоговия прозорец Имоти активирайте раздела Output Format.
  • Поставете отметка в квадратчето Активирайте опаковката.

    Други елементи сега трябва да бъдат разрешени в раздела.

  • В списъка Тип опаковка изберете COM DLL.
  • В полето за въвеждане Име на файл въведете име за библиотеката (името по подразбиране се генерира въз основа на името на проекта).
  • В съответния списък изберете Резултати от тип и Java класове и ресурси.
  • Щракнете Добре.
  • След конфигуриране на опциите за разположение, трябва да изградите проекта. След това Visual J ++ ще добави към проекта библиотека с типове, която дефинира COM интерфейса за контролата. Типовата библиотека също съдържа информация, която регистърът използва, за да регистрира COM клас като контрола. След генериране на библиотеката на типове, Visual J ++ регистрира COM класовете в проекта в системния регистър, използвайки генерирания файл на библиотеката на типове. Чрез регистрация на класовете, Visual J + + поставя файловете на проектния клас и библиотеката с типове в COM DLL.

    За да изградите проект:

    Регистриране на COM DLL

    След като регистрирате WFC класове като COM класове и ги поставите в COM DLL, трябва да регистрирате COM DLL в системния регистър. За това се използва програмата Regsvr32.exe. Тъй като библиотеката на типове описва COM класовете в проекта като контрола, Regsvr32 регистрира COM DLL като ActiveX контрола. Когато COM DLL е регистриран, други приложения могат да видят вашия WFC контрол в списъка с ActiveX контроли, налични в системата.