Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Programowanie Windows (Win32/Win64 API) Jacek Matulewski 17 września 2012

Podobne prezentacje


Prezentacja na temat: "Programowanie Windows (Win32/Win64 API) Jacek Matulewski 17 września 2012"— Zapis prezentacji:

1 Programowanie Windows (Win32/Win64 API) Jacek Matulewski 17 września 2012

2 O czym będzie ten wykład: Tworzenie aplikacji dla systemu Windows z użyciem interfejsu programisty Win32 Aplikacje z graficznym interfejsem użytkownika (GUI). Przede wszystkim MFC, mniej VCL. Powłoka systemu Windows (Windows Shell). Podstawy programowania sieciowego. Wszystkich funkcji jest tysiące. My wycinek.

3 O czym nie będzie: Win16 i Win32s,.NET/CLR, WinRT Zakładam znajomość podstaw C/C++ ( if, for, while, switch ). Jeżeli trzeba powtórzę wskaźniki i klasy. Zakładam znajomość podstaw ang. - MSDN Skupię się raczej na rdzeniu WinAPI, niż na nowościach (np. z Windows 8) DirectX/OpenGL – osobny wykład

4 Co to jest Windows API? Windows API = WinAPI = Win32 API API = application programming interface Interfejs programistyczny pozwalający na dostęp do funkcjonalności Windows z poziomu kodu. Zbiór bibliotek DLL z eksportowanymi funkcjami. Dostęp do niemal wszystkich funkcjonalności Windows (częściowo poza bezpieczeństwem) Windows SDK (m.in. nagłówki C do DLL)

5 Zasadnicze biblioteki Win32 API: Base services (jądro) – kernel32.dll –podstawowe funkcje systemu plików – nie mylić z funkcjami z shell32.dll, –obsługa urządzeń peryferyjnych, –wątki, –obsługa błędów – ale nie wyjątki

6 Zasadnicze biblioteki Win32 API: Advanced services – advapi32.dll –rejestr systemu Windows (baza danych), –zamykanie i restart systemu, –usługi Windows, –obsługa kont użytkowników

7 Zasadnicze biblioteki Win32 API: Graphics Device Interface – gdi32.dll –warstwa abstrakcyjna dla urządzeń wyjścia korzystających z grafiki –obsługa urządzeń wyjścia m.in. monitor, drukarka –kontakt ze sterownikami urządzeń GDI, –obsługa czcionek i palet kolorów, –rysowanie okien, kontrolek, menu itp., –Od Windows XP: GDI+ (C++) –Windows Vista/7: Windows Display Driver Model

8 Zasadnicze biblioteki Win32 API: User Interface – user32.dll –podstawowe kontrolki Windows tworzące GUI: przyciski, paski przewijania, pola wyboru itp. –obsługa zarówno wejścia (mysz, klawiatura), jak i wyjścia (zmiana wyglądu kontrolki) –Od Windows XP obsługa kontrolek zgromadzona jest w bibliotece comctl32.dll (Common Control Library), też: pasek stanu, zakładki, itp. –Nakładki: MCF, ATL, VCL (Borland), Qt, Gimp Toolkit (GTK), AWT (Java), WF (.NET)

9 Zasadnicze biblioteki Win32 API: Common Dialog Boxes Library – comdlg32.dll –okna dialogowe udostępniane przez Windows: 1) wczytywanie i zapisywanie pliku, 2) wybór czcionki, wybór koloru, 3) przeszukiwanie i zastępowanie, 4) okna związane z drukowaniem

10 Zasadnicze biblioteki Win32 API: Windows Shell (powłoka systemu Windows) shell32.dll –wyższa warstwa API (nad jądrem i GUI), –CopyFile[Ex], MoveFile itd. (kernel32.dll) vs SHFileOperation i IFileOperation (od Vista) –WinExec (Win16) i CreateProcess (kernel32.dll) vs ShellExecute –Na funkcjach powłoki bazuje Eksplorator Windows i częściowo narzędzia administracyjne

11 Zasadnicze biblioteki Win32 API: Networking services –NetBIOS = Network Basic I/O System, –WinSock = Windows Sockets API (obsługa TCP/IP) –RPC = remote procedure call –NetDDE, DDE = dynamic data exchange –por. też. DCOM, COM+

12 Zasadnicze biblioteki Win32 API: Desktop Windows Manager (DWM) Windows Management Instrumentation (WMI) Windows Internet (WinINet) Active Directory Cryptography Image Mastering API (IMAPI) Media Control Interface (MCI) i wiele innych

13 Historia WinAPI Windows 1.0 – 450 funkcji Windows 7 – tysiące! (ale te 450 nadal jest)

14 Źródła MSDN – podstawowe źródło wiedzy: Nowy wygląd: us/library/ee663300(v=VS.85).aspx Stary wygląd: us/library/windows/desktop/hh447209(v=vs.85).aspxhttp://msdn.microsoft.com/en- us/library/ee663300(v=VS.85).aspxhttp://msdn.microsoft.com/en- us/library/windows/desktop/hh447209(v=vs.85).aspx Inne strony: EFNet #Winprog: Adam Boduch (Delphi): Dla programistów.NET:

15 Źródła Książki: o Jeffrey Richter, Christopher Nasarre Windows via C/C++ (wydanie 5), Microsoft Press, Warszawa 2009 o Johnson M. Hart Programowanie w systemie Windows (wydanie 4), Helion 2010 o Jacek Matulewski, Maciej Pakulski, Dawid Borycki, Bartosz Biały, Piotr Pepłowski, Michał Matuszak, Daniel Szlag, Dawid Urbański Visual C++. Gotowe rozwiązania dla programistów Windows, Helion 2010


Pobierz ppt "Programowanie Windows (Win32/Win64 API) Jacek Matulewski 17 września 2012"

Podobne prezentacje


Reklamy Google