Desktopové aplikace (Visual C++)
aplikace klasické pracovní plochy v jazyce C++ je nativní aplikace, která má přístup k úplné sadě Windows rozhraní api a buď se spouští v okně, nebo v systémové konzole. aplikace klasické pracovní plochy v jazyce C++ mohou běžet na Windows XP prostřednictvím Windows 11 (i když Windows XP již není oficiálně podporováno a existuje mnoho Windows rozhraní api, které bylo od té doby zavedeno.)
desktopová aplikace se liší od aplikace Univerzální platforma Windows (UWP), která se dá spustit na počítačích se systémy Windows 11, Windows 10, XBox, Windows Phone, Surface Hub a dalšími zařízeními. Další informace o aplikacích Desktop vs. UWP najdete v tématu Volba technologie.
Přemostění na desktop
v Windows 10 a novějších můžete zabalit stávající desktopovou aplikaci nebo objekt COM jako aplikaci UWP. aplikace můžou přidávat funkce UWP, jako je dotykové ovládání, nebo volat rozhraní api z moderní Windows sady rozhraní api. aplikaci UWP můžete také přidat do řešení pro stolní počítače v Visual Studio a zabalit je do jednoho balíčku a pomocí Windows rozhraní api komunikovat mezi nimi.
v Visual Studio 2017 verze 15,4 a novější můžete vytvořit balíček Windows aplikace Project, abyste mohli významně zjednodušit práci s balíčkem stávající desktopové aplikace. S ohledem na to, jaká volání registru nebo rozhraní API vaše aplikace klasické pracovní plochy používá, platí několik omezení, ale v mnoha případech můžete vytvořit alternativní cesty kódu pro dosažení podobných funkcí při spuštění v balíčku aplikace. další informace najdete v tématu Přemostění na desktop.
Terminologie
aplikace Win32 je Windows desktopová aplikace v jazyce C++, která může používat nativní rozhraní api pro Windows C a/nebo rozhraní api modelu COM CRT a standardní knihovny api a knihovny třetích stran. aplikace Win32, která běží v okně, vyžaduje, aby vývojář pracoval explicitně s Windowsmi zprávami v rámci funkce Windows procedury. Bez ohledu na název může být aplikace Win32 kompilována jako 32 (x86) nebo 64-bit (x64) binární. v rozhraní IDE Visual Studio jsou výrazy x86 a Win32 synonymní.
Component Object Model (com) je specifikace, která umožňuje programům napsaným v různých jazycích komunikovat mezi sebou. mnohé Windows komponenty jsou implementovány jako objekty modelu com a následují standardní pravidla modelu com pro vytváření objektů, zjišťování rozhraní a zničení objektů. Použití objektů COM z aplikací klasické pracovní plochy v jazyce C++ je poměrně jasné, ale psaní vlastního objektu COM je pokročilejší. Knihovna ATL (Active Template Library) poskytuje makra a pomocné funkce, které zjednodušují vývoj v modelu COM.
aplikace MFC je Windows desktopové aplikace, které k vytvoření uživatelského rozhraní používají třídy Microsoft Foundation . Aplikace MFC může také používat komponenty modelu COM i CRT a standardní knihovny rozhraní API. knihovna MFC poskytuje pro smyčku zpráv okna a Windows rozhraní api tenké objekty orientované na objekt C++. Knihovna MFC je výchozí volbou pro aplikace – zejména podnikové aplikace, které mají velké množství ovládacích prvků uživatelského rozhraní nebo vlastních uživatelských ovládacích prvků. Knihovna MFC poskytuje pohodlné pomocné třídy pro správu oken, serializaci, manipulaci s textem, tisk a prvky moderního uživatelského rozhraní, jako je například pás karet. Aby bylo možné s knihovnou MFC platit, měli byste být obeznámeni s Win32.
Aplikace nebo komponenta C++/CLI používá rozšíření pro syntaxi jazyka C++ (jak je povoleno standardem C++) k umožnění interakce mezi .NET a nativním kódem C + +. aplikace C++/cli může mít části, které jsou spouštěny nativně, a části, které jsou spouštěny na .NET Framework s přístupem k knihovně tříd .net Base. C++/CLI je upřednostňovanou možností, když máte nativní kód jazyka C++, který potřebuje pracovat s kódem napsaným v jazyce C# nebo Visual Basic. Je určena pro použití v knihovně DLL .NET, nikoli v kódu uživatelského rozhraní. Další informace naleznete v tématu programování .NET s C++/CLI (Visual C++).
všechny desktopové aplikace v jazyce C++ mohou používat modul C Runtime (CRT) a standardní třídy knihovny a funkce, objekty COM a funkce public Windows, které jsou souhrnně označovány jako Windows rozhraní API. úvod do Windows aplikací klasické pracovní plochy v jazyce C++ naleznete v tématu Začínáme s Win32 a C++.
V této části
| Nadpis | Popis |
|---|---|
| Konzolové aplikace pro Windows v C++ | Obsahuje informace o konzolových aplikacích. Konzolová aplikace Win32 (nebo win64) nemá žádná vlastní okna a žádnou smyčku zpráv. Spustí se v okně konzoly a vstup a výstup se provádí prostřednictvím příkazového řádku. |
| Návod: Vytváření desktopových aplikací Windows (C++) | vytvořte jednoduchou Windows desktopovou aplikaci. |
| Vytvoření prázdné desktopové aplikace Windows | jak vytvořit Windows desktopový projekt, který nemá žádné výchozí soubory. |
| Přidávání souborů do prázdných aplikací Win32 | Postup přidání souborů do prázdného projektu. |
| Práce se zdrojovými soubory | Postup přidání obrázků, ikon, tabulek řetězců a dalších prostředků do aplikace klasické pracovní plochy. |
| Prostředky pro vytvoření hry s použitím rozhraní DirectX (C++) | Obsahuje odkazy na obsah pro vytváření her v jazyce C++. |
| Návod: vytvoření a použití statické knihovny | Postup vytvoření binárního souboru. lib. |
| postupy: použití Windows SDK v desktopové aplikaci Windows | obsahuje kroky pro nastavení projektu pro sestavení pomocí Windows SDK. |
Související články
| Nadpis | Popis |
|---|---|
| Vývoj pro Windows | Obsahuje informace o rozhraní API a modelu COM systému Windows. (Některá rozhraní API systému Windows a knihovny DLL třetích stran jsou implementovány jako objekty modelu COM.) |
| Hilo: vývoj aplikací v jazyce C++ pro Windows 7 | popisuje, jak vytvořit aplikaci s bohatou Windows desktopovou aplikací, která používá Windows animaci a Direct2D k vytvoření uživatelského rozhraní založeného na karuselu. tento kurz se od Windows 7 neaktualizoval, ale stále poskytuje důkladný úvod k programování v systému Win32. |
| přehled programování Windows v jazyce C++ | popisuje klíčové funkce Windows desktopového programování v jazyce C++. |