<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.multimediaexpo.cz/mmecz/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
		<id>http://www.multimediaexpo.cz/mmecz/index.php?action=history&amp;feed=atom&amp;title=Windows_API</id>
		<title>Windows API - Historie editací</title>
		<link rel="self" type="application/atom+xml" href="http://www.multimediaexpo.cz/mmecz/index.php?action=history&amp;feed=atom&amp;title=Windows_API"/>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Windows_API&amp;action=history"/>
		<updated>2026-05-01T21:24:59Z</updated>
		<subtitle>Historie editací této stránky</subtitle>
		<generator>MediaWiki 1.16.5</generator>

	<entry>
		<id>http://www.multimediaexpo.cz/mmecz/index.php?title=Windows_API&amp;diff=170257&amp;oldid=prev</id>
		<title>Sysop: 1 revizi</title>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Windows_API&amp;diff=170257&amp;oldid=prev"/>
				<updated>2013-06-21T14:06:32Z</updated>
		
		<summary type="html">&lt;p&gt;1 revizi&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;← Starší verze&lt;/td&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;Verze z 21. 6. 2013, 14:06&lt;/td&gt;
		&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Sysop</name></author>	</entry>

	<entry>
		<id>http://www.multimediaexpo.cz/mmecz/index.php?title=Windows_API&amp;diff=170256&amp;oldid=prev</id>
		<title>Sysop: Nahrazení textu „Microsoft“ textem „Microsoft“</title>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Windows_API&amp;diff=170256&amp;oldid=prev"/>
				<updated>2011-10-19T15:41:44Z</updated>
		
		<summary type="html">&lt;p&gt;Nahrazení textu „&lt;a href=&quot;/mmecz/index.php?title=Microsoft&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Microsoft (stránka neexistuje)&quot;&gt;Microsoft&lt;/a&gt;“ textem „Microsoft“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''Windows API''' (neformálně '''WinAPI''') je [[API]] vyvinuté firmou Microsoft pro [[operační systém]] [[Microsoft Windows]]. Všechny programy v Microsoft Windows musí nezávisle na použitém [[programovací jazyk|programovacím jazyce]] komunikovat prostřednictvím Windows API, které obsahuje nejen základní funkce, ale i funkce pro vytváření [[Uživatelské rozhraní|uživatelského rozhraní]] a další. &lt;br /&gt;
&lt;br /&gt;
Protože je jádro systému Microsoft Windows typu [[Mikrojádro|mikrokernel]], používá se v programech výhradně [[Meziprocesová komunikace|meziprocesová komunikace]]. Programy nemají k jádru přístup pomocí [[systémové volání|systémových volání]], jako je to obvyklé v [[UN*X|unixových]] systémech s jádrem [[Monolitické jádro|monolitického]] typu.&lt;br /&gt;
&lt;br /&gt;
Nízkoúrovňový přístup k systému Windows, nutný především pro [[ovladač zařízení|ovladače zařízení]], je v současné verzi Windows poskytován systémem [[Windows Driver Foundation]] nebo [[Native API]].&lt;br /&gt;
&lt;br /&gt;
== Komponenty Windows API ==&lt;br /&gt;
Funkčnost Windows API lze rozdělit do 8 kategorií&amp;lt;ref name=&amp;quot;msdn-overview&amp;quot;&amp;gt;[[Microsoft Developer Network]] (červenec 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/overview_of_the_windows_api.asp Přehled Windows API.]'' získaný 28. srpna 2005&amp;lt;/ref&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
; Základní služby&amp;lt;ref name=&amp;quot;msdn-base&amp;quot;&amp;gt;[[Microsoft Developer Network]] (červenec 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/base_services.asp Základní Servis.]'' získaný 28. srpna 2005&amp;lt;/ref&amp;gt;&lt;br /&gt;
: Poskytuje přístup k nezbytným zdrojům poskytnutým systémem Windows. Zahrnuje věci jako [[souborový systém]], [[periferie (technika)|periferie]], [[proces (program)|procesy]] a [[vlákno (program)|vlákna]], přístup do registrů Windows a ošetření chyb. Tyto funkce jsou na 16bitových Windows v souborech &amp;lt;tt&amp;gt;kernel.exe&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;krnl286.exe&amp;lt;/tt&amp;gt; nebo &amp;lt;tt&amp;gt;krnl386.exe&amp;lt;/tt&amp;gt; a na 32bitových Windows v &amp;lt;tt&amp;gt;kernel32.dll&amp;lt;/tt&amp;gt; a &amp;lt;tt&amp;gt;advapi32.dll&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; Pokročilé služby&lt;br /&gt;
: Zahrnují API pro práci s [[registr Windows|registrem Windows]], vypnutí/restart systému (nebo jeho zrušení), spuštění/zastavení/vytvoření [[služba systému Windows|služeb systému Windows]] a správu uživatelských účtů. Tyto funkce jsou ve 32bitových Windows implementovány v &amp;lt;tt&amp;gt;advapi32.dll&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; [[Graphics Device Interface]] (GDI)&amp;lt;ref name=&amp;quot;msdn-gdi&amp;quot;&amp;gt;[[Microsoft Developer Network]] (červenec 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/graphics_device_interface.asp Graphics Device Interface.]'' získaný 28. srpna 2005&amp;lt;/ref&amp;gt;&lt;br /&gt;
: Poskytuje funkce pro výstup grafického obsahu na [[monitor (obrazovka)|monitory]], [[Počítačová tiskárna|tiskárny]] a jiná [[výstupní zařízení]]. Na 16bitových Windows uloženo v &amp;lt;tt&amp;gt;gdi.exe&amp;lt;/tt&amp;gt; a na 32bitových Windows v &amp;lt;tt&amp;gt;gdi32.dll&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
; Uživatelské Rozhraní&amp;lt;ref name=&amp;quot;msdn-ui&amp;quot;&amp;gt;[[Microsoft Developer Network]] (červenec 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/user_interface.asp User Interface.]'' získaný 28. srpna 2005&amp;lt;/ref&amp;gt;&lt;br /&gt;
: Poskytuje funkce pro tvorbu a řízení počítačových oken a dalších základních prvků jako jsou tlačítka a posuvníky, zpracovává vstup z [[počítačová klávesnice|klávesnice]] a [[počítačová myš|myši]] a jiných funkcí spojených s [[Grafické uživatelské rozhraní|GUI]]. Tato funkční jednotka se na 16bitových Windows nachází v &amp;lt;tt&amp;gt;user.exe&amp;lt;/tt&amp;gt; a na 32bitových Windows v &amp;lt;tt&amp;gt;user32.dll&amp;lt;/tt&amp;gt;. Od [[Windows XP]] se základní prvky nachází v &amp;lt;tt&amp;gt;comctl32.dll&amp;lt;/tt&amp;gt;, společně s bežnými prvky (Common Control Library).&lt;br /&gt;
&lt;br /&gt;
; Knihovna běžných dialogových oken&amp;lt;ref name=&amp;quot;msdn-comdlg&amp;quot;&amp;gt;[[Microsoft Developer Network]] (2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/commondialogboxlibrary.asp Common Dialog Box Library.]'' získaný 22. září 2005&amp;lt;/ref&amp;gt;&lt;br /&gt;
: Poskytuje aplikacím standardní [[dialogové okno|dialogová okna]] pro otevření a ukládání souborů, volbu barvy a fontů, apod. Knihovna je na 16bitových Windows uložena v souboru &amp;lt;tt&amp;gt;commdlg.dll&amp;lt;/tt&amp;gt; a na 32bitových Windows v &amp;lt;tt&amp;gt;comdlg32.dll&amp;lt;/tt&amp;gt;. Celkově také patří do kategorie ''Uživatelské Rozhraní''.&lt;br /&gt;
&lt;br /&gt;
; Knihovna běžných prvků (Common Control Library)&amp;lt;ref name=&amp;quot;msdn-ccl&amp;quot;&amp;gt;[[Microsoft Developer Network]] (červenec 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/common_control_library.asp Common Control Library.]'' získán 28. srpna 2005&amp;lt;/ref&amp;gt;&lt;br /&gt;
: Poskytuje aplikaci přístup k pokročilejším prvkům operačního systému. Zahrnuje věci jako stavový řádek, zobrazení průběhu výpočtu, [[toolbar]]y a [[záložka (GUI)|záložky]]. Knihovna je na 16bitových Windows umístěna v &amp;lt;tt&amp;gt;commctrl.dll&amp;lt;/tt&amp;gt; a na 32bitových Windows v &amp;lt;tt&amp;gt;comctl32.dll&amp;lt;/tt&amp;gt;. Celkově také patří do kategorie ''Uživatelské Rozhraní''.&lt;br /&gt;
&lt;br /&gt;
; Windows Shell&amp;lt;ref name=&amp;quot;msdn-shell&amp;quot;&amp;gt;[[Microsoft Developer Network]] (červenec 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/windows_shell.asp Windows Shell.]'' získáno 28. srpna 2005.&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;msdn-shell2&amp;quot;&amp;gt;[[Microsoft Developer Network]] (2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/programmersguide/shell_intro.asp Nadstavba (Shell) Příručka Programátora.]'' získaný 28. srpna 2005&amp;lt;/ref&amp;gt;&lt;br /&gt;
: Umožňuje aplikacím přístup k funkcím poskytovaných shellem Windows. Komponenta je na 16bitových Windows v &amp;lt;tt&amp;gt;shell.dll&amp;lt;/tt&amp;gt;, později ve [[Windows 95]] v &amp;lt;tt&amp;gt;shell32.dll&amp;lt;/tt&amp;gt; a na 32bitových Windows v &amp;lt;tt&amp;gt;shlwapi.dll&amp;lt;/tt&amp;gt;. Celkově také patří do kategorie ''Uživatelské Rozhraní''.&lt;br /&gt;
&lt;br /&gt;
; Síťové služby&amp;lt;ref name=&amp;quot;msdn-network&amp;quot;&amp;gt;[[Microsoft Developer Network]] (červenec 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/network_services.asp Síťové služby.]'' získáno v 28. srpna 2005&amp;lt;/ref&amp;gt;&lt;br /&gt;
: Poskytuje přístup k různým [[Počítačová síť|počítačovým sítím]]. Zahrnuje také [[NetBIOS]], [[Winsock]], [[NetDDE]], [[RPC]] a mnoho dalších funkcí.&lt;br /&gt;
&lt;br /&gt;
===Web===&lt;br /&gt;
[[World Wide Web|Webový]] prohlížeč [[Windows Internet Explorer]] poskytuje mnoho API funkcí, které lze považovat za součást Windows API. Internet Explorer je součástí operačních systémů firmy Microsoft od [[Windows 95]] a poskytuje doplňující webové funkce od [[Windows 98]].&amp;lt;ref name=&amp;quot;msdn-browser&amp;quot;&amp;gt;[[Microsoft Developer Network]] (January 2006); ''[http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/prog_browser_node_entry.asp Programming and reusing the browser]'' získáno 22. ledna 2006.&amp;lt;/ref&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
* možnost využití prohlížeče v jiné aplikaci (&amp;lt;tt&amp;gt;shdocvw.dll&amp;lt;/tt&amp;gt;) a využití renderovacího jádra [[Trident (jádro)|Trident]]&lt;br /&gt;
* servis URL v &amp;lt;tt&amp;gt;urlmon.dll&amp;lt;/tt&amp;gt;, který poskytuje COM objekt aplikacím pro [[Syntaktická analýza|analýzu]] URL. Aplikace mohou též poskytovat vlastní URL odkazy ostatním.&lt;br /&gt;
* podpora pro vícejazyčné a mezinárodní texty (&amp;lt;tt&amp;gt;mlang.dll&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* DirectX transformace (sada filtrů pro zpracování obrázků)&lt;br /&gt;
* podpora XML (MSXML komponenty)&lt;br /&gt;
* přístup k adresáři (Windows Address Book)&lt;br /&gt;
&lt;br /&gt;
=== Multimédia ===&lt;br /&gt;
&lt;br /&gt;
Microsoft poskytuje [[DirectX]] API jako součást systému od [[Windows 95]] OSR2. DirectX poskytuje podporu pro multimédia a hry:&lt;br /&gt;
* [[Direct3D]] jako alternativu k [[OpenGL]] pro přístup k 3D hardwarové akceleraci&lt;br /&gt;
* [[DirectDraw]] pro hardwarově akcelerovaný přístup k 2D framebufferu. Od DirectX 9 je tato komponenta nahrazena Direct3D, které poskytuje obecnější výkonné funkce (2D renderování je podmnožina 3D).&lt;br /&gt;
* [[DirectSound]] pro nízkoúrovňový přístup ke zvukovým kartám s hardwarovou akcelerací&lt;br /&gt;
* [[DirectInput]] pro komunikaci se vstupními zařízeními jako jsou [[joystick]]y a [[gamepad]]y.&lt;br /&gt;
* [[DirectPlay]] pro infrastrukturu her s více hráči. Tato komponenta byla odstraněna v DirectX 9 a Microsoft nedoporučuje její další využívání pro vývoj her.&lt;br /&gt;
* [[DirectShow]] pro podporu multimédií, avšak Microsoft nedoporučuje její další využívání pro vývoj her. Je srovnatelný s [[framework]]em [[GStreamer]].&lt;br /&gt;
* [[DirectMusic]]&lt;br /&gt;
&lt;br /&gt;
=== Interakce s programy ===&lt;br /&gt;
Windows API slouží zejména pro komunikaci programů s operačním systémem. Pro komunikaci programů mezi sebou vyvinul Microsoft sérii technologií, která začala [[Dynamic Data Exchange]] (DDE), které bylo nahrazeno [[Object Linking and Embedding]] (OLE) a později ještě [[Component Object Model]] (COM).&lt;br /&gt;
&lt;br /&gt;
=== Nadstavbové knihovny ===&lt;br /&gt;
Microsoft vyvinul různé nadstavbové knihovny, které umožňují aplikacím pracovat s nízkoúrovňovými Windows API funkcemi abstraktnějším způsobem. [[Microsoft Foundation Class Library]] (MFC) je nadstavba Windows API pro [[Třída (programování)|třídy]] v [[C++]], která usnadňuje [[objektově orientované programování]] při využívání Windows API. Active Template Library (ATL) je [[Šablona (programování)|šablonově]] orientovaná nadstavba pro COM. [[Windows Template Library]] (WTL) byla vyvinuta jako rozšíření pro ATL a zamýšlena jako odlehčená alternativa k MFC.&lt;br /&gt;
&lt;br /&gt;
Další nadstavby vyvinula firma [[Borland]]: [[Object Windows Library]] (OWL) byla vydána jako konkurence k MFC a poskytuje podobnou objektově orientovanou nadstavbu. Nahradila ji [[Visual Component Library]] (VCL), která je napsána v [[Object Pascal]]u a dostupná jak pro [[Delphi]], tak pro [[C++Builder]].&lt;br /&gt;
&lt;br /&gt;
Většina aplikačních [[framework]]ů pro Windows je (alespoň částečně) nadstavbou nad Windows API. Proto také [[.NET Framework]] a [[Java (programovací jazyk)|Java]] stejně jako ostatní [[Programovací jazyk|programovací jazyky]] pod Windows jsou (nebo obsahují) nadstavbové knihovny.&lt;br /&gt;
&lt;br /&gt;
== Verze ==&lt;br /&gt;
&lt;br /&gt;
Téměř všechny nové verze [[Microsoft Windows]] přinášejí rozšíření nebo změny Windows API&amp;lt;ref name=&amp;quot;win32faq-history&amp;quot;&amp;gt;The Iseran Project (1996-2001). ''[http://www.iseran.com/Win32/FAQ/history.html History of the Windows API.]'' získáno 7. října, 2005.&amp;lt;/ref&amp;gt;, avšak název API se s verzemi Microsoft Windows nemění kromě změny z ''Win32'' na ''Windows API'', které nyní zahrnuje všechny starší i všechny budoucí verze&amp;lt;ref name=&amp;quot;msdn-overview2&amp;quot;&amp;gt;[[Microsoft Developer Network]] (July 2005). ''[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/overview_of_the_windows_api.asp Overview of the Windows API.]'' Retrieved August 28, 2005.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
;Win16: Win16 je API pro první 16bitové verze [[Microsoft Windows]]. Původně byla nazývána ''Windows API'', avšak byla později přejmenována na ''Win16'' kvůli odlišení od nové 32bitové verze ''Windows API''. Funkce Win16 API jsou obsaženy zejména v základních souborech OS: ''kernel.exe'' (nebo ''krnl286.exe'' nebo ''krnl386.exe''), ''user.exe'' a ''gdi.exe''. I přes [[Přípona souboru|příponu]] &amp;lt;tt&amp;gt;EXE&amp;lt;/tt&amp;gt; se jedná o [[dynamická knihovna|dynamické knihovny]].&lt;br /&gt;
&lt;br /&gt;
;Win32: Win32 je 32bitové API pro novou řadu [[Windows NT]]. Funkce jsou stejně jako u Win16 implementovány v základních systémových DLL [[kernel32.dll]], [[user32.dll]] a [[gdi32.dll]]. Ve [[Windows 95]] se původně hovořilo o ''Win32c'' (písmeno „c“ je {{Vjazyce2|en|compatibility}}), avšak název byl posléze firmou Microsoft opuštěn. Od verze [[Windows NT 4.0]] jsou Win32 volání vykonávány v uživatelském režimu modulem [[csrss.exe]] (Client/Server Runtime Server Subsystem) a v jaderném režimu modulem [[win32k.sys]].&lt;br /&gt;
&lt;br /&gt;
;Win32s: Win32s byla [[podmnožina]] rozhraní Win32 určená pro [[Windows 3.x|Windows 3.1x]] (písmeno „s“ je {{Vjazyce2|en|subset}})&lt;br /&gt;
&lt;br /&gt;
;Win32 pro 64bitové Windows: Win32 pro 64bitové Windows (dříve označované ''Win64'') je API pro 64bitové verze ([[Windows XP Professional x64 Edition]], 64bitové verze [[Windows Server 2003]] a verze pro [[Itanium]] a jejich následovníci). Všechny 64bitové verze jsou totožnou [[Platforma (informatika)|platformou]] s Windows NT, takže lze po kontrole typů adresových ukazatelů (a jejich aritmetiky) použít 32bitové zdrojové kódy (64bitová verze API nepřináší žádné další specifické funkce).&lt;br /&gt;
&lt;br /&gt;
== Další implementace ==&lt;br /&gt;
Přestože je implementace Windows API chráněna [[Autorské právo|autorským právem]] (copyright), je všeobecně respektován precedent&amp;lt;ref&amp;gt;http://www.eetimes.com/news/design/showArticle.jhtml?articleID=201801579&amp;lt;/ref&amp;gt;, který umožňuje ostatním dodavatelům emulovat Windows pomocí poskytnutí identického API bez porušení autorských práv.&lt;br /&gt;
&lt;br /&gt;
;Wine: [[Wine]] je pokus o poskytnutí Win32 API vrstvy pro [[UN*X|unixové]] [[Platforma (informatika)|platformy]].&lt;br /&gt;
;ReactOS: [[ReactOS]] je volně šiřitelný operační systém, který spolupracuje s projektem Wine. Implementuje celý operační systém včetně kompatibility s [[Ovladač zařízení|ovladači zařízení]].&lt;br /&gt;
;HX DOS Extender: [[HX DOS Extender]] je emulace WIndows APi pro běh jednoduchých Windows programů na [[Příkazový řádek|příkazovém řádku]] systému [[Disk Operating System|DOS]].&lt;br /&gt;
;Odin: [[Odin (software)|Odin]] je projekt pro emulace Win32 v [[OS/2]].&lt;br /&gt;
&lt;br /&gt;
== Volání API funkcí ==&lt;br /&gt;
&lt;br /&gt;
Ve Windows je několik desítek knihoven (&amp;lt;tt&amp;gt;kernel32.dll&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;user32.dll&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;imagehlp.dll&amp;lt;/tt&amp;gt;, …), které na zavolání vykonají funkce API. Jsou to celky, na které je možné v různých programech, tzv. „[[debugger]]ech“, nastavovat ''breakpointy'' (zarážky). Toho využívají například [[cracker|crackeři]]. &lt;br /&gt;
&lt;br /&gt;
V [[Assembler]]u probíhá volání API funkcí Windows instrukcí ''call'', před ní pomocí instrukce ''push'' musí proběhnout uložení hodnot. V některých assemblerech ([[MASM]]) je možné je volat pomocí maker, např.: &lt;br /&gt;
&lt;br /&gt;
 invoke MessageBox, NULL, offset text, offset titulek, MB_OK&lt;br /&gt;
&lt;br /&gt;
== Reference ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Článek z Wikipedie}}&lt;br /&gt;
[[Kategorie:Programové knihovny]]&lt;br /&gt;
[[Kategorie:Microsoft Windows]]&lt;br /&gt;
[[Kategorie:API Microsoftu]]&lt;/div&gt;</summary>
		<author><name>Sysop</name></author>	</entry>

	</feed>