Aplikace klasické pracovní plochy C++(Visual)Desktop Applications (Visual C++)

Desktopová aplikace v C++ systému je nativní aplikace, která má přístup k celé sadě rozhraní API systému Windows a buď se spouští v okně, nebo v systémové konzole.A desktop application in C++ is a native application that can access the full set of Windows APIs and either runs in a window or in the system console. Aplikace klasické pracovní C++ plochy v nástroji můžou běžet v systému Windows XP prostřednictvím systému Windows 10 (i když systém Windows XP již není oficiálně podporován a existuje mnoho rozhraní API systému Windows, které bylo od té doby zavedeno).Desktop applications in C++ can run on Windows XP through Windows 10 (although Windows XP is no longer officially supported and there are many Windows APIs that have been introduced since then).

Desktopová aplikace se liší od aplikace Univerzální platforma Windows (UWP), která se dá spustit na počítačích s Windows 10, a taky na zařízeních XBox, Windows Phone, Surface Hub a dalších.A desktop application is distinct from a Universal Windows Platform (UWP) app, which can run on PCs running Windows 10, and also on XBox, Windows Phone, Surface Hub, and other devices. Další informace o aplikacích Desktop vs. UWP najdete v tématu Volba technologie.For more information about desktop vs. UWP applications, see Choose your technology.

Most pro stolní počítačeDesktop Bridge

Ve Windows 10 můžete zabalit stávající desktopovou aplikaci nebo objekt COM jako aplikaci UWP a přidat funkce UWP, jako je dotykové ovládání, nebo volat rozhraní API z moderní sady Windows API.In Windows 10 you can package your existing desktop application or COM object as a UWP app and add UWP features such as touch, or call APIs from the modern Windows API set. Aplikaci pro UWP můžete také přidat do řešení pro stolní počítače v aplikaci Visual Studio a zabalit je do jednoho balíčku a použít rozhraní API systému Windows ke komunikaci mezi nimi.You can also add a UWP app to a desktop solution in Visual Studio, and package them together in a single package and use Windows APIs to communicate between them.

V aplikaci Visual Studio 2017 verze 15,4 a novější můžete vytvořit projekt balíčku aplikace systému Windows, který výrazně zjednodušuje práci s balíčkem stávající aplikace klasické pracovní plochy.In Visual Studio 2017 version 15.4 and later, you can create a Windows Application Package Project to greatly simplify the work of packaging your existing desktop application. 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.A few restrictions apply with respect to what registry calls or APIs your desktop application uses, but in many cases you can create alternate code paths to achieve similar functionality while running in an app package. Další informace najdete v tématu most pro stolní počítače.For more information, see Desktop Bridge.

TerminologieTerminology

  • Aplikace Win32 je desktopová aplikace pro C++ Windows, která umožňuje používat nativní rozhraní API pro Windows C nebo rozhraní API modelu COM CRT a standardní knihovny API a knihovny třetích stran.A Win32 application is a Windows desktop application in C++ that can make use of native Windows C APIs and/or COM APIs CRT and Standard Library APIs, and 3rd party libraries. Aplikace Win32, která běží v okně, vyžaduje, aby vývojář pracoval explicitně se zprávami systému Windows v rámci funkce procedury systému Windows.A Win32 application that runs in a window requires the developer to work explicitly with Windows messages inside a Windows procedure function. Bez ohledu na název může být aplikace Win32 kompilována jako 32 (x86) nebo 64-bit (x64) binární.Despite the name, a Win32 application can be compiled as a 32-bit (x86) or 64-bit (x64) binary. V integrovaném vývojovém prostředí sady Visual Studio jsou výrazy x86 a Win32 synonymně.In the Visual Studio IDE, the terms x86 and Win32 are synonymous.

  • Component Object Model (com) je specifikace, která umožňuje programům napsaným v různých jazycích komunikovat mezi sebou.The Component Object Model (COM) is a specification that enables programs written in different languages to communicate with one another. Mnohé součásti systému Windows 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ů.Many Windows components are implemented as COM objects and follow standard COM rules for object creation, interface discovery and object destruction. Použití objektů COM z C++ desktopových aplikací je relativně jasné, ale psaní vlastního objektu com je pokročilejší.Using COM objects from C++ desktop applications is relatively straightforward, but writing your own COM object is more advanced. Knihovna ATL (Active Template Library) poskytuje makra a pomocné funkce, které zjednodušují vývoj v modelu COM.The Active Template Library (ATL) provides macros and helper functions that simplify COM development.

  • Aplikace MFC je desktopová aplikace pro Windows, která k vytvoření uživatelského rozhraní používá základní třídy Microsoft .An MFC application is a Windows desktop application that use the Microsoft Foundation Classes to create the user interface. Aplikace MFC může také používat komponenty modelu COM i CRT a standardní knihovny rozhraní API.An MFC application can also use COM components as well as CRT and Standard Library APIs. Knihovna MFC poskytuje pro C++ smyčku zpráv okna a rozhraní Windows API tenké objekty orientované na objekt.MFC provides a thin C++ object-oriented wrapper over the window message loop and Windows APIs. 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ů.MFC is the default choice for applications—especially enterprise-type applications—that have lots of user interface controls or custom user controls. 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.MFC provides convenient helper classes for window management, serialization, text manipulation, printing, and modern user interface elements such as the ribbon. Aby bylo možné s knihovnou MFC platit, měli byste být obeznámeni s Win32.To be effective with MFC you should be familiar with Win32.

  • Aplikace C++nebo komponenta/CLI používá rozšíření pro C++ syntaxi ( C++ standardně povoleno) k umožnění interakce mezi .NET a nativním kódem C + +.A C++/CLI application or component uses extensions to C++ syntax (as allowed by the C++ Standard) to enable interaction between .NET and native C++code. 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.A C++/CLI application can have parts that run natively and parts that run on the .NET Framework with access to the .NET Base Class Library. C++/CLI je upřednostňovanou možností, když máte nativní C++ kód, který potřebuje pracovat s kódem napsaným v C# nebo Visual Basic.C++/CLI is the preferred option when you have native C++ code that needs to work with code written in C# or Visual Basic. Je určena pro použití v knihovně DLL .NET, nikoli v kódu uživatelského rozhraní.It is intended for use in .NET DLLs rather than in user interface code. Další informace najdete v tématu programování .NET s C++/CLI (vizuál C++).For more information, see .NET Programming with C++/CLI (Visual C++).

Každá desktopová aplikace C++ v nástroji může používat modul C runtime (CRT) a standardní třídy knihovny a funkce, objekty COM a veřejné funkce systému Windows, které jsou souhrnně označovány jako rozhraní Windows API.Any desktop application in C++ can use C Runtime (CRT) and Standard Library classes and functions, COM objects, and the public Windows functions, which collectively are known as the Windows API. Úvodní informace o desktopových aplikacích v systému C++Windows najdete v tématu Začínáme s Win32 C++a .For an introduction to Windows desktop applications in C++, see Get Started with Win32 and C++.

V tomto oddíluIn this section

NázevTitle PopisDescription
Konzolové aplikace pro Windows v C++Windows Console Applications in C++ Obsahuje informace o konzolových aplikacích.Contains information about console apps. Konzolová aplikace Win32 (nebo win64) nemá žádná vlastní okna a žádnou smyčku zpráv.A Win32 (or Win64) console application has no window of its own and no message loop. Spustí se v okně konzoly a vstup a výstup se provádí prostřednictvím příkazového řádku.It runs in the console window, and input and output are handled through the command line.
Návod: Vytváření desktopových aplikací Windows (C++)Walkthrough: Creating Windows Desktop Applications (C++) Vytvořte jednoduchou desktopovou aplikaci pro Windows.Create a simple Windows desktop application.
Vytvoření prázdné desktopové aplikace WindowsCreating an Empty Windows Desktop Application Jak vytvořit desktopový projekt pro Windows, který nemá žádné výchozí soubory.How to create a Windows desktop project that has no default files.
Přidávání souborů do prázdných aplikací Win32Adding Files to an Empty Win32 Applications Postup přidání souborů do prázdného projektu.How to add files to an empty project.
Práce se zdrojovými souboryWorking with Resource Files Postup přidání obrázků, ikon, tabulek řetězců a dalších prostředků do aplikace klasické pracovní plochy.How to add images, icons, string tables, and other resources to a desktop application.
Prostředky pro vytvoření hry s použitím rozhraní DirectXC++()Resources for Creating a Game Using DirectX (C++) Obsahuje odkazy na obsah pro vytváření her C++v nástroji.Links to content for creating games in C++.
Návod: vytvoření a použití statické knihovnyWalkthrough: Creating and Using a Static Library Postup vytvoření binárního souboru. lib.How to create a .lib binary file.
Postupy: Použití sady Windows 10 SDK v desktopové aplikaci WindowsHow to: Use the Windows 10 SDK in a Windows Desktop Application Obsahuje kroky pro nastavení projektu pro sestavení pomocí sady Windows 10 SDK.Contains steps for setting up your project to build using the Windows 10 SDK.
NázevTitle PopisDescription
Vývoj pro WindowsWindows Development Obsahuje informace o rozhraní API a modelu COM systému Windows.Contains information about the Windows API and COM. (Některá rozhraní API systému Windows a knihovny DLL třetích stran jsou implementovány jako objekty modelu COM.)(Some Windows APIs and third-party DLLs are implemented as COM objects.)
Hilo: vývoj C++ aplikací pro Windows 7Hilo: Developing C++ Applications for Windows 7 Popisuje, jak vytvořit bohatou klientskou aplikaci pro Windows, která používá animaci Windows a Direct2D k vytvoření uživatelského rozhraní založeného na karuselu.Describes how to create a rich-client Windows desktop application that uses Windows Animation and Direct2D to create a carousel-based user interface. Tento kurz se od Windows 7 neaktualizoval, ale stále poskytuje důkladný úvod k programování v systému Win32.This tutorial has not been updated since Windows 7 but it still provides a thorough introduction to Win32 programming.
Přehled programování v C++ v systému WindowsOverview of Windows Programming in C++ Popisuje klíčové funkce programování pro stolní počítače v C++systému Windows.Describes key features of Windows desktop programming in C++.

Viz také:See also

C++ v sadě Visual StudioC++ in Visual Studio