Sdílet prostřednictvím


Vytvoření projektu (ATL – tutoriál, část 1)

Tento kurz vás provede podrobným procházením projektu ATL bez atributů, který vytvoří objekt ActiveX, který zobrazí mnohoúhelník. Objekt obsahuje možnosti umožňující uživateli změnit počet stran, které tvoří mnohoúhelník, a kód pro aktualizaci zobrazení.

Poznámka:

Tento kurz vytvoří stejný zdrojový kód jako ukázka Polygonu. Pokud se chcete vyhnout ručnímu zadávání zdrojového kódu, můžete si ho stáhnout z abstrakty ukázky Polygonu. Pak můžete při práci v kurzu odkazovat na zdrojový kód Polygonu nebo ho použít ke kontrole chyb ve vašem vlastním projektu. Chcete-li provést kompilaci, otevřete soubor pch.h (stdafx.h v sadě Visual Studio 2017 a starší) a nahraďte:

#ifndef WINVER
#define WINVER 0x0400
#endif

with

#ifndef WINVER
#define WINVER 0x0500
#define _WIN32_WINNT 0x0500
#endif

Kompilátor si stále stěžuje na regsvr32 to, že není správně ukončen, ale přesto byste měli mít sestavenou a dostupnou knihovnu DLL ovládacího prvku.

Vytvoření počátečního projektu ATL pomocí Průvodce projektem ATL

  1. V sadě Visual Studio 2017 a starších verzích: Soubor>nového>projektu. Otevřete kartu Visual C++ a vyberte MFC/ATL. Vyberte projekt ATL.

    V sadě Visual Studio 2019: Zvolte Nový>projekt souboru>, do vyhledávacího pole zadejte "atl" a zvolte Projekt ATL.

  2. Jako název projektu zadejte Mnohoúhelník .

    Umístění zdrojového kódu bude obvykle výchozí nastavení \Users\username>\<source\repos a automaticky se vytvoří nová složka.

  3. V sadě Visual Studio 2019 přijměte výchozí hodnoty a klikněte na tlačítko OK. V sadě Visual Studio 2017 kliknutím na tlačítko OK otevřete průvodce projektem ATL. Kliknutím na Nastavení aplikace zobrazíte dostupné možnosti. Vzhledem k tomu, že tento projekt vytvoří ovládací prvek a ovládací prvek musí být procesový server, ponechte typ aplikace jako knihovnu DLL. Klikněte na OK.

Visual Studio vytvoří projekt vygenerováním několika souborů. Tyto soubory můžete zobrazit v Průzkumník řešení rozbalením objektuPolygon. Soubory jsou uvedené níže.

Soubor Popis
Polygon.cpp Obsahuje implementaci DllMain, , DllCanUnloadNowDllGetClassObject, DllRegisterServera DllUnregisterServer. Obsahuje také mapu objektů, což je seznam objektů ATL v projektu. Toto je zpočátku prázdné.
Polygon.def Tento soubor definice modulu poskytuje linkeru informace o exportech požadovaných vaší knihovnou DLL.
Polygon.idl Soubor jazyka definice rozhraní, který popisuje rozhraní specifická pro vaše objekty.
Mnohoúhelník.rgs Tento skript registru obsahuje informace o registraci knihovny DLL programu.
Polygon.rc Soubor zdroje, který zpočátku obsahuje informace o verzi a řetězec obsahující název projektu.
Resource.h Hlavičkový soubor pro soubor prostředků.
Polygonps.def Tento definiční soubor modulu poskytuje linkeru informace o exportech vyžadovaných proxy kódem a kódem zástupných procedur, který podporuje volání napříč apartmány.
stdafx.cpp Soubor, který bude #include stdafx.h.
stdafx.h Soubor, který bude #include a předkompiluje soubory hlaviček ATL.
Soubor Popis
Polygon.cpp Obsahuje implementaci DllMain, , DllCanUnloadNowDllGetClassObject, DllRegisterServera DllUnregisterServer. Obsahuje také mapu objektů, což je seznam objektů ATL v projektu. Toto je zpočátku prázdné.
Polygon.def Tento soubor definice modulu poskytuje linkeru informace o exportech požadovaných vaší knihovnou DLL.
Polygon.idl Soubor jazyka definice rozhraní, který popisuje rozhraní specifická pro vaše objekty.
Mnohoúhelník.rgs Tento skript registru obsahuje informace o registraci knihovny DLL programu.
Polygon.rc Soubor zdroje, který zpočátku obsahuje informace o verzi a řetězec obsahující název projektu.
Resource.h Hlavičkový soubor pro soubor prostředků.
Polygonps.def Tento definiční soubor modulu poskytuje linkeru informace o exportech vyžadovaných proxy kódem a kódem zástupných procedur, který podporuje volání napříč apartmány.
pch.cpp Soubor, který bude #include pch.h.
pch.h Soubor, který bude #include a předkompiluje soubory hlaviček ATL.
  1. V Průzkumník řešení klikněte pravým tlačítkem myši na Polygon projekt.

  2. V místní nabídce klepněte na příkaz Vlastnosti.

  3. Klikněte na Linker. Změňte možnost Per-UserRedirection na Ano.

  4. Klikněte na OK.

V dalším kroku přidáte do projektu ovládací prvek.

Přejít ke kroku 2

Viz také

Kurz