VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu



Podobné dokumenty
VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Pro vzdělanější Šluknovsko. 32 Inovace a zkvalitnění výuky prostřednictvím ICT Bc. David Pietschmann.

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 4 VY 32 INOVACE

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 14 VY 32 INOVACE

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

Materiály 2. ročník učebních oborů Občanská nauka. Metodický list. Identifikační údaje školy

VÝUKOVÝ MATERIÁL. 3. ročník učebního oboru Elektrikář Přílohy. bez příloh. Identifikační údaje školy

VÝUKOVÝ MATERIÁL VÝUKOVÝ MATERIÁL VÝUKOVÝ MATERIÁL

SEZNAM ANOTACÍ. CZ.1.07/1.5.00/ III/2 Inovace a zkvalitnění výuky prostřednictvím ICT VY_32_INOVACE_PS4 Obecná psychologie

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

IPA - Lab.1 Úvod do programování v ASM

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Ovládací panely

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 1 VY 32 INOVACE

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

VÝUKOVÝ MATERIÁL. 3. ročník učebního oboru Elektrikář Přílohy. bez příloh. Identifikační údaje školy

VÝUKOVÝ MATERIÁL. Materiály pro ročník učebních oborů Občanská nauka, Ekonomie Metodický list. Identifikační údaje školy

VÝUKOVÝ MATERIÁL. Pro vzdělanější Šluknovsko. 32 Inovace a zkvalitnění výuky prostřednictvím ICT Bc. David Pietschmann.

VÝUKOVÝ MATERIÁL Ing. Yvona Bečičková Termika VY_32_INOVACE_0301_0212 Teplotní roztažnost látek. Fyzika 2. ročník, učební obory Bez příloh

Hotelová škola, Obchodní akademie a Střední průmyslová škola Teplice, Benešovo náměstí 1, p.o. III/2 - Inovace a zkvalitnění výuky prostřednictvím ICT

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 20 VY 32 INOVACE

Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace. Bratislavská 2166, Varnsdorf, IČO:

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 15 VY 32 INOVACE

Lekce 6 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

NÁVRH VLASTNÍ ŠABLONY

VÝUKOVÝ MATERIÁL. 3. ročník učebního oboru Elektrikář Přílohy. bez příloh. Identifikační údaje školy

VÝUKOVÝ MATERIÁL. 3. ročník učebního oboru Elektrikář Přílohy. bez příloh. Identifikační údaje školy

VÝUKOVÝ MATERIÁL Ing. Yvona Bečičková Tematická oblast

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

VÝUKOVÝ MATERIÁL. Opakování látky prvního ročníku psychologie a sociologie, případně učiva ZŠ. Vytvořeno Určeno pro

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 3 VY 32 INOVACE

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 5 VY 32 INOVACE

VÝUKOVÝ MATERIÁL. Varnsdorf, IČO: tel Využití ICT při hodinách občanské nauky

Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková. Výukový materiál

Popis výukového materiálu

KONTINGENČNÍ TABULKY CO TO JE

VÝUKOVÝ MATERIÁL VÝUKOVÝ MATERIÁL

Popis výukového materiálu

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko 32 - Inovace a zkvalitnění výuky prostřednictvím ICT

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

VÝUKOVÝ MATERIÁL. Varnsdorf, IČO: tel CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 11 VY 32 INOVACE

Tento materiál byl vytvořen v rámci projektu Operačního programu Vzdělávání pro konkurenceschopnost.

INFORMATIKA MS WORD, HROMADNÁ KORESPONDENCE

VÝUKOVÝ MATERIÁL Ing. Yvona Bečičková Tematická oblast. Termika Číslo a název materiálu VY_32_INOVACE_0301_0215 Anotace

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

CZ.1.07/1.5.00/

VÝUKOVÝ MATERIÁL VÝUKOVÝ MATERIÁL VÝUKOVÝ MATERIÁL

Lekce 23 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Materiály 1. ročník učebních oborů, maturitních oborů On, BE. Metodický list. Identifikační údaje školy

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

INFORMATIKA MS WORD ODRÁŽKY A ČÍSLOVÁNÍ

VÝUKOVÝ MATERIÁL. Pro vzdělanější Šluknovsko. 32 Inovace a zkvalitnění výuky prostřednictvím ICT Bc. David Pietschmann.

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Vyšší odborná škola a Střední škola Varnsdorf, příspěvková organizace. Šablona 11 VY 32 INOVACE

PŘÍKAZOVÝ ŘÁDEK ZÍSKÁVÁNÍ NÁPOVĚDY

SEZNAM ANOTACÍ. CZ.1.07/1.5.00/ III/2 Inovace a zkvalitnění výuky prostřednictvím ICT VY_32_INOVACE_PS2 Psychologie osobnosti

ÚČETNICTVÍ Bankovní účty, úvěrové účty

VÝUKOVÝ MATERIÁL VÝUKOVÝ MATERIÁL

VÝUKOVÝ MATERIÁL. Varnsdorf, IČO: tel CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko

VÝUKOVÝ MATERIÁL. Varnsdorf, IČO: tel CZ.1.07/1.5.00/ Pro vzdělanější Šluknovsko

OCENĚNÍ DM POŘIZOVACÍ CENOU

Metodický list k didaktickému materiálu

Integrovaná střední škola, Sokolnice 496

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-101

CLOUD ZLÍNSKÝ KRAJ. Obchodní akademie, Vyšší odborná škola a Jazyková škola s právem státní jazykové zkoušky Uherské Hradiště

Transkript:

VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu CZ.1.07/1.5.00/34.1076 Název projektu Pro vzdělanější Šluknovsko Číslo a název šablony 32 Inovace a zkvalitnění výuky prostřednictvím ICT Autor 0207 Mgr. Bc. Jan Škoda Tematická oblast Programování Číslo a název materiálu VY_32_INOVACE_0207_0314 Visual C# - API funkce Anotace Žák si upevní učivo o API funkcích v programovacím jazyce Visual C# Vytvořeno 26. 7. 2013 Určeno pro 3. ročník oboru Informační technologie Přílohy Bez příloh

Metodický list Učitel: Výklad s projekcí elektronického učebního materiálu. Ukázka obecného postupu činností. Monitorování činnosti žáků. Žák: Sleduje výkladovou projekci a demonstraci učitele. Procvičuje.

Visual C# API funkce

Windows API Operační systém Windows umožňuje aplikacím, které pod ním běží přistupovat k OS pomocí takzvaných API funkcí. Pokud píšete aplikaci pro Windows, která nepoužívá žádné další knihovny, budete muset přímo volat tyto API funkce. V knihovně.net je zaobaleno velké množství funkcí, takže se vám málokdy stane, že potřebujete dělat něco, na co není v.netu funkce. Přesto ale může být někdy potřeba volat funkci, kterou v.net Frameworku nenaleznete..net naštěstí umožňuje importování API funkcí a jejich volání pomocí takzvaného platform invoke.

Deklarace API funkcí Pokud chcete používat API funkce ve vašem programu, musíte nejprve každou funkci nadeklarovat a říct.net Frameworku jaké má parametry a v jaké se nalézá knihovně. Pokud se podíváte například na funkci ShowWindow, zjistíte že se nalézá v knihovně user32.dll a že její parametry jsou HWND a int. HWND se do.netu překládá jako IntPtr, takže deklarace funkce v C# bude vypadat následovně: // Toto je potreba kvuli atributu DllImport using System.Runtime.InteropServices; // Import funkce ShowWindow z knihovny user32.dll [DllImport("user32.dll")] static extern IntPtr ShowWindow(IntPtr hwnd,int nshow); Deklarace funkcí musí být vloženy v nějaké třídě jako statické metody. Stránka, kde naleznete hlavičky většiny API funkcí je www.pinvoke.net.

Deklarace API funkcí Další funkce, se kterou si představíme je GetWindowText. Import této funkce je trošku obtížnější, protože práce s textovými řetězci v.netu a WinAPI se liší. Naštěstí.Net obsahuje třídu StringBuilder, kterou je možné předat funkci místo parametru typu LPSTR. Pomocí atributu [Out] ještě dáváme najevo, že parametr je výstupní (ale přesto je nutné objekt inicializovat). Deklarace funkce GetWindowText tedy vypadá takto: // Import funkce pracující s textovým řetězcem [DllImport("user32.dll")] static extern int GetWindowText(IntPtr hwnd, [Out]StringBuilder lpstring,int nmaxcount);

Volání API funkcí Pokud máte nadeklarované funkce, můžete s nimi pracovat jako s normálními statickými funkcemi. Je však třeba dávat pozor na některé detaily při volání, které jsou způsobeny tím, že API funkce fungují jinak. Například u funkcí pro práci s textem musíte napřed vytvořit objekt StringBuilder s nějakou kapacitou (do kterého funkce může zkopírovat text) a tuto kapacitu předáte jako další parametr. Kód z ukázkové aplikace, který zjišťuje titulek aktivního okna vypadá takto:

Volání API funkcí // Zjistit identifikátor (handle) aktivního okna IntPtr handle=getforegroundwindow(); // Vytvořit StringBuilder s kapacitou 256 znaků StringBuilder sb=new StringBuilder(256); GetWindowText(handle,sb,sb.Capacity); // Zobrazit titulek MessageBoxem MessageBox.Show(sb.ToString());

Volání API funkcí Pokud použijete špatnou deklaraci funkce, nebo se pokusíte importovat funkci, která neexistuje vyhodí.net výjimku až při prvním volání funkce. Výjimka DllNotFoundException znamená, že jste zadali špatné jméno DLL knihovny s funkcí. Výjimka EntryPointNotFoundException znamená, že se v dané knihovně nenachází požadovaná funkce. Máte tedy buď špatně jméno funkce. Nebo hledáte funkci v jiné knihovně.

Zdroje BĚHÁLEK, Marek. Programovací jazyk C# [online]. 2007, 134 s. [cit. 2013-07-23]. Dostupné z: http://www.cs.vsb.cz/behalek/vyuka/pcsharp/text.pdf..net - Používání Windows API funkcí. PETRÍČEK, Tomáš. TomasP.Net [online]. 2005 [cit. 2013-07-23]. Dostupné z: http://tomasp.net/articles/wininterop.aspx#links. PEŇAŠKA, Jaroslav. Malý úvod do programování v.net C# [online]. 2006, 64 s. Dostupné z: http://physics.ujep.cz/~jkrejci/vyuka/prg2/malyuvoddocsharp.pdf. PInvoke.net [online]. 2007 [cit. 2013-07-23]. Dostupné z: http://www.pinvoke.net/ Projekty SIPVZ Gymnázia Olomouc-Hejčín 2005/2006. KOVÁŘ, Dušan. Programování se zaměřením na.net a jazyk C#: Programovací jazyk C# [online]. 2006 [cit. 2013-07-23]. Dostupné z: http://projektysipvz.gytool.cz/projektysipvz/default.aspx?uid=3. PUŠ, Petr. Poznáváme C# a Microsoft.NET. In: O počítačích, IT a internetu - Živě.cz [online]. 2004 [cit. 2013-07-23]. Dostupné z: http://possitive.wz.cz/files/poznavame_csharp.pdf. ŠÍMA, František a David VILÍMEK. Microsoft Visual Studio.NET: praktické programování krok za krokem. 1. vyd. Praha: Grada, 2006, 254 s. Průvodce (Grada). ISBN 80-247-1418-3. VIRIUS, Miroslav. C# pro zelenáče. Praha: Neocortex, 2002, 255 s. ISBN 80-863-3011-7. VIRIUS, Miroslav. Programování pro.net. Praha: ČVUT, 2011, 260 s. ISBN 978-80-01-04866- 4.