Aby dodać obiektu lub formantu ATL lub projektów opartych na MFC, można użyć Kreatora obiektu ATL. Dla każdego obiektu COM lub kontroli, które można dodawać Kreator generuje pliki CPP i H, jak również plik RGS obsługę skryptów rejestru.
Jeśli próbujesz dodać prostych obiektów COM do projektu MFC, trzeba będzie dodać obsługę ATL do istniejącego projektu. Aby uzyskać więcej informacji na temat tej funkcji, zobacz Dodawanie ATL wsparcia swój projekt MFC.
Uwaga Kreator obiektu ATL dodaje obiekt do aktywnego projektu. Jeśli chcesz dodać formant do innego projektu do obszaru roboczego, najpierw należy go aktywnego projektu.
Aby dodać obiektu lub formantu za pomocą Kreatora obiektu ATL
Gdy projekt zostanie otwarty wybierz Nowy obiekt ATL z menu Wstaw.
- lub -
Z ClassView kliknij przycisk prawym przyciskiem myszy folder na poziomie projektu i wybierz Nowy obiekt ATL z wyskakującego menu.
Otwiera się Kreator obiektu ATL.
Uwaga Jeśli jest to projekt MFC, do których nie zostało wcześniej dodane obiektu ATL, zostanie wyświetlony monit aby określić, czy obsługa ATL dodany do projektu. Kliknięcie przycisku tak otwiera się Kreator obiektu ATL.
Kreator obiektu ATL są wyświetlane różne kategorie obiektów po lewej i ikony obiektów w każdej kategorii po prawej stronie. Wybierz kategorię; Kreator wyświetla ikony obiektów w tej kategorii.
ATL obiektów
Prosty obiekt dodaje minimalne obiektu COM.
Dodatek obiektu dodaje obiekt COM, który rozszerza powłoki Visual C++ z swój własny przycisk paska narzędzi i obsługi zdarzeń. Obiekt ten oferuje taką samą funkcjonalność jak jeden dodane przez kreatora Dodaj DevStudio w menu Visual C++ pliku , kartę Nowych projektów.
Internet Explorer obiektu dodaje obiekt, który obsługuje interfejsy wymagane przez program Internet Explorer, ale bez obsługi interfejsu użytkownika.
Aktywny składnik Serwer dodaje obiekt, który może być używany przez funkcję Active Server Pages Internet Information Server (IIS).
Składnik serwera transakcji MS zawiera pliki nagłówkowe, wymagane przez program Microsoft Transaction Server i definiuje obiekt jako nonaggregatable.
Składnik Sekretarza obiektu dodaje obiekt, który implementuje interfejs IComponentRegistrar . Ten obiekt może służyć do rejestrowania wszystkie obiekty w serwerze w procesie, który zadeklarować makro DECLARE_OBJECT_DESCRIPTION . Za pomocą tego obiektu można zarejestrować lub wyrejestrować obiekty pojedynczo, w przeciwieństwie do DllRegisterServer i DllUnregisterServer Zarejestruj i Wyrejestruj wszystkie obiekty w serwerze. Mogą również uzyskać listę obiektów serwera i ich opisy metodą IComponentRegistrar::GetComponents.
ATL formantów
Pełna kontrola dodaje obiekt, który obsługuje interfejsy na wszystkie kontenery.
Lite kontroli dodaje obiekt, który obsługuje interfejsy wymagane przez program Internet Explorer, włączając w to wsparcie dla interfejsu użytkownika.
Strona właściwości dodaje obiekt, który implementuje strony właściwości.
Kompozytowy kontroli dodaje formant, który może obsługiwać wiele innych formantów.
Formant HTML dodaje formant z funkcji języka DHTML i wyświetla stronę sieci web HTML w interfejsie użytkownika.
Lite kontroli złożonych dodaje formant złożony, który może obsługiwać inne formanty, ale obsługuje tylko przez interfejsy, które są wymagane przez program Internet Explorer.
Lite formant HTML dodaje formant z funkcji języka DHTML i wyświetla stronę sieci web HTML w interfejsie użytkownika, ale obsługuje tylko przez interfejsy, które są wymagane przez program Internet Explorer.
ATL różne
Okno dialogowe dodaje obiekt, który implementuje okno dialogowe.
Dostęp do danych
Dostawca dodaje kod do obsługi szablonów dostawcy OLE DB.
Konsument dodaje kod do obsługi OLE DB konsumenta szablonów.
Kliknij dwukrotnie formant lub obiekt, który chcesz wstawić. Kreator obiektu ATL wyświetla okno dialogowe wyświetlania opcji, które mają zastosowanie do obiektu lub formantu.
Uwaga W zależności od typu obiektu lub formantu, który można wybrać niektóre strony i opcje opisane poniżej mogą nie być dostępne.
Na stronie nazwy wprowadź nazwy klasy i plików. Domyślnie nazwę, którą należy wprowadzić krótką nazwę staje się głównym dla wszystkich innych nazw na tej stronie. Można wprowadzić własne nazwy zamiast zaakceptować te ustawienia domyślne.
Klasa jest nazwą klasy wdrażanie obiektu.
CoClass jest nazwą klasy składnika, który zawiera listę obsługiwanych przez obiekt interfejsów.
Interfejs jest nazwa interfejsu, utworzone przez użytkownika dla obiektu. Ten interfejs zawiera niestandardowe metody. Dla pełnej kontroli, Internet Explorer formantów, prostych obiektów, Internet Explorer obiektów, obiekty w dodatku, aktywne składniki serwera i Microsoft Transaction Server składników Kreator tworzy interfejs o tej nazwie, którą należy określić. Strona właściwości obiektów nie niestandardowego interfejsu jest tworzony, a kreator przypisuje IUnknown interfejsu obiektu. Okno dialogowe obiektów nie tworzy interfejs.
Typ jest ciąg opisu dla obiektu, który przechodzi w rejestrze.
Identyfikator ProgID jest nazwą, która pojemników można używać zamiast atrybut CLSID obiektu.
Na stronie atrybuty , wybierz wątków modelu, typ interfejsu i wsparcie agregacji:
Wybierz Podwójny interfejsach , jeśli chcesz obiektu interfejsów z interfejsu IDispatch jak również obsługuje funkcje niestandardowe (Tablica metod wirtualnych ma funkcje niestandardowego interfejsu i metody interfejsu IDispatch późnego wiązania). Pozwala to zarówno COM klientów, jak i automatyzacji kontrolerów dostęp do obiektu.
Wybierz Niestandardowe interfejsy do uzyskania obiektu interfejsów z IUnknown (Tablica metod wirtualnych ma niestandardowego interfejsu funkcji i nie metod interfejsu IDispatch ). Interfejs niestandardowy może być szybciej niż podwójnym interfejsem, szczególnie przez granice procesu.
Wybierz dla agregacji tylko , jeśli obiekt ma posłużyć do utworzenia tylko wtedy, gdy jest sumowanej.
Zaznacz pole wyboru Obsługa ISupportErrorInfo do obiektu wdrożenia ISupportErrorInfo interfejsu dla raportowania błędów.
Zaznacz pole wyboru Obsługa Connection Points dodać obsługę punktów połączenia do obiektu. Kreator automatycznie będą czerpać klasy obiektu z IConnectionPointContainerImpl.
Zaznacz pole wyboru Wolna organizatora wątku do utworzenia obiektu bezwątkowego przegrupowywania danych do efektywnego marszałek wskaźników interfejsów między wątki w tym samym procesie.
Na stronie różne Wybierz funkcje dla obiektu.
Wybierz opcję nieprzezroczyste aby formantu całkowicie nieprzezroczysty, tak, aby żaden z kontenera pokazuje za granice formantu. Pomaga to kontener szybciej narysować formant. Prostokąt cały formant przechodzi do metody OnDraw klasy kontroli. Ta opcja ustawia VIEWSTATUS_OPAQUE bitów w VIEWSTATUS wyliczenie.
Wybierz Podkład barwny do formantu tła kolor kryjący i nie deseń. Opcja ta ma znaczenie tylko jeśli nieprzezroczystego się opcja jest zaznaczone. Ta opcja ustawia VIEWSTATUS_SOLIDBKGND bit wyliczenie VIEWSTATUS.
Wybierz niewidoczne w czasie wykonywania się określić, że jeśli formant są niewidoczne w czasie wykonywania. Niewidocznej regulatory umożliwia wykonywanie operacji w tle, takie jak wyzwalania zdarzenia w określonych interwałach.
Wybierz polecenie działa tak jak przycisk z kontroli do działać jak przycisk, w szczególności aby wyświetlić sam jako przycisk domyślny, na podstawie właściwości otoczenia DisplayAsDefault.
Wybierz polecenie działa tak jak etykieta z kontroli do zastąpienia etykiety macierzysty kontenera.
Wybierz Dodaj formant w zależności od określonej superklasy, jednej z klas oknie standardowych. Lista rozwijana zawiera okno klasy nazwy zdefiniowane przez system Windows. Po wybraniu jednego z nich, Kreator dodaje zmienną CContainedWindow do klasy użytkownika kontroli. CContainedWindow::Create będzie superklasy, której klasy okna, które określisz.
Wybierz Normalize DC mają utworzyć kontekstu urządzenia znormalizowana podłączaniu do rysowania samego formantu. To zapewnia standaryzację wyglądu formantu, ale jest mniej efektywne.
Wybierz Insertable do formantu pojawią się w oknie dialogowym Wstaw obiekt aplikacji, takich jak program Microsoft Word i Microsoft Excel. Jeśli formant następnie może zostać wstawione przez dowolnej aplikacji, która obsługuje obiekty osadzone w oknie dialogowym Wstaw obiekt.
Wybierz polecenie Okna tylko , aby wymusić formantu do okna, nawet w pojemnikach, które obsługują obiekty bez okien. Jeśli nie zaznaczysz tej opcji, jeśli formant będzie automatycznie ponownie bez okien w pojemnikach, które obsługują obiekty bez okien i automatycznie się okna w pojemnikach, które nie obsługują obiekty bez okien.
Na stronie Właściwości zasobu wybierz polecenie Właściwości podstawowy obiekt ma obsługiwać, takie jak podpis lub Kolor obramowania. Wszystkie właściwości zapasów można wybrać jednocześnie klikając gt; > przycisk.
Na stronie ciągi znaków wprowadź nazwy obiektu strony właściwości.
Tytuł jest tekst, który pojawia się na stronie właściwości karty.
Doc String to ciąg tekstowy opisujący strony. Klatki właściwości można użyć opisu, w etykietce narzędzia lub wiersz stanu. Klatki właściwości standardowych obecnie nie wykorzystuje ten ciąg.
HelpFile jest nazwą pliku pomocy skojarzone. Nazwa pliku pomocy powinna być prosta nazwa bez ścieżki. Kiedy użytkownik naciśnie pomocy, ramki otwiera plik pomocy w katalogu o nazwie wartości klucza HelpDir we wpisach rejestru strony właściwości na własny identyfikator CLSID.
Na stronie Dodawanie w Wybierz funkcje dla obiektu dodatek.
Zapewnienia narzędzi tworzy przycisk paska narzędzi, który użytkownik może kliknąć, aby wykonać polecenie dodaje obiekt użytkownika.
Nazwa polecenia jest nazwą polecenia dodawane do programu Visual C++ przez obiekt użytkownika. Nazwa ta pojawia się na liście na karcie Dodatki i makr menu narzędzia , Dostosowywanie opcji.
Metoda nazwa jest nazwą metody, która implementuje polecenie.
Tekst paska narzędzi jest tekst, który ma być wyświetlany na przycisku, który można dodać do paska narzędzi do przewozu poza polecenia.
Stan paska tekst jest tekstem, który ma się pojawiać na wiersz stanu podczas wykonywania polecenia.
Etykietki narzędzi tekst jest tekstem, który ma się pojawiać w komunikat etykietki narzędzia dla przycisku paska narzędzi, gdy użytkownika myszy znajduje się nad przyciskiem.
Zdarzenia aplikacji umożliwia obiektu dodatek do połowu zdarzenia aplikacji.
Debuger zdarzeń umożliwia obiektu dodatek do połowu zdarzenia debugera.
Na stronie ASP Wybierz funkcje dla składnika Active Server.
OnStartPage/OnEndPage, zaznaczone domyślnie dodaje metody OnStartPage i OnEndPage obiektu.
Jeśli Metoda OnStartPage/OnEndPage jest zaznaczone, można wybrać których Wewnętrzne obiekty chcesz mieć dostępny jako wskaźniki Państwa klasie obiektu. Domyślnie każdy obiekt wewnętrzny jest sprawdzana.
Na stronie MTX Wybierz funkcje dla składnika Microsoft Transaction Server. Podwójne i niestandardowe wybierz rodzaj interfejsu zaimplementowanego i Wsparcie Connection Points dodaje obsługę punktów połączenia. Opcje te są takie same, jak na stronie atrybutów dla innych rodzajów obiektów. Ponadto strony MTX ma dwie opcje unikatowe:
Wsparcie IObjectControl zapewnia dostęp do trzech metod IObjectControl : Uaktywnij, CanBePooled i Dezaktywuj.
Mogą być połączone informuje środowisko czasu wykonywania Transaction Server, że obiekt powinny być zwracane do puli instancji po dezaktywacji, zamiast zniszczone. Opcja ta nie może być wybrany, chyba że wybrano również opcję Obsługa IObjectControl.