Programowanie_w_systemie_Windows_Wydanie_IV_prowi4.pdf

(727 KB) Pobierz
Programowanie
w systemie Windows.
Wydanie IV
Autor: Johnson M. Hart
T³umaczenie: Tomasz Walczak
ISBN: 978-83-246-2780-6
Tytu³ orygina³u:
Windows System
Programming (4th Edition)
Format: 168x237, stron: 752
• Wykorzystaj paralelizm i maksymalizuj wydajnoœæ w systemach
wielordzeniowych
• Zapewnij przenoœnoœæ miêdzy œrodowiskami 64- i 32-bitowymi
• Popraw skalowalnoœæ za pomoc¹ w¹tków, pul w¹tków i mechanizmu IOCP
Wybieraj¹c system Windows jako docelow¹ platformê rozwijanych aplikacji,
programiœci na ca³ym œwiecie sugeruj¹ siê najczêœciej jego du¿¹ funkcjonalnoœci¹
i wymogami biznesowymi. System ten jest bowiem zgodny z wieloma kluczowymi
standardami. Obs³uguje miêdzy innymi biblioteki standardowe jêzyków C i C+ oraz
uwzglêdnia wiele otwartych standardów wspó³dzia³ania. Dlatego gniazda systemu
Windows s¹ standardowym interfejsem programowania rozwi¹zañ sieciowych
z dostêpem do TCP/IP i innych protoko³ów sieciowych. W dodatku ka¿da nowa wersja
tego systemu jest coraz bardziej zintegrowana z dodatkowymi technologiami z obszaru
multimediów, sieci bezprzewodowych, us³ug Web Service, platformy .NET i us³ugi
plug-and-play. Niew¹tpliwym atutem Windows jest tak¿e zawsze uwa¿any za stabilny,
a jednak ci¹gle wzbogacany o wa¿ne dodatki interfejs API.
Jeœli zatem szukasz kompletnego, rzetelnego i aktualnego podrêcznika do nauki
programowania za pomoc¹ interfejsu Windows API, w³aœnie go znalaz³eœ! Ksi¹¿ka ta
w praktyczny sposób przedstawia wszystkie mechanizmy systemu Windows potrzebne
programistom, pokazuj¹c, w jaki sposób dzia³aj¹ funkcje tego systemu i jak wchodz¹
w interakcje z aplikacjami. Skoncentrowano siê tu na podstawowych us³ugach systemu,
w tym na systemie plików, zarz¹dzaniu procesami i w¹tkami, komunikacji miêdzy
procesami, programowaniu sieciowym i synchronizacji. Autor tej ksi¹¿ki nie zamierza
jednak obci¹¿aæ Ciê zbêdn¹ teori¹ i nieistotnymi szczegó³ami. Podaje Ci wiedzê opart¹
na prawdziwych przyk³adach, dziêki czemu szybko i sprawnie opanujesz poruszane tu
zagadnienia. Wiadomoœci, które tu znajdziesz, pozwol¹ Ci zrozumieæ interfejs Windows
API w takim stopniu, byœ zdoby³ solidne podstawy do rozwijania programów
na platformê .NET Microsoftu.
Oto kompletny, aktualny przewodnik po programowaniu
przy u¿yciu interfejsu Windows API!
S
PIS TREŚCI
Rysunki .................................................................................13
Tabele ...................................................................................15
Listingi ..................................................................................17
Przebiegi programów ...........................................................21
Wstęp ....................................................................................23
O autorze ..............................................................................33
Rozdział 1. Wprowadzenie do systemu Windows ...................................35
Podstawy systemów operacyjnych ......................................................................... 36
Ewolucja systemu Windows ...................................................................................... 37
Wersje systemu Windows .......................................................................................... 37
Pozycja systemu Windows na rynku ...................................................................... 40
System Windows, standardy i systemy o otwartym dostępie
do kodu źródłowego ................................................................................................ 41
Podstawy systemu Windows .................................................................................... 43
Przenośność 32- i 64-bitowego kodu źródłowego ............................................ 46
Biblioteka standardowa języka C — kiedy korzystać z niej
do przetwarzania plików? ....................................................................................... 47
Co jest potrzebne do korzystania z tej książki? ................................................... 48
Przykład — proste sekwencyjne kopiowanie pliku ........................................... 50
Podsumowanie .............................................................................................................. 58
Ćwiczenia ......................................................................................................................... 61
Rozdział 2. Korzystanie z systemu plików i znakowych operacji
wejścia-wyjścia w systemie Windows ...................................63
Systemy plików w systemie Windows ................................................................... 64
Reguły tworzenia nazw plików ................................................................................. 65
Otwieranie, wczytywanie, zapisywanie i zamykanie plików .......................... 66
5
6
S
PIS
TRE¥CI
Przerywnik — Unicode i znaki ogólne ................................................................... 74
Strategie związane z kodowaniem Unicode ........................................................ 77
Przykład — przetwarzanie błędów ......................................................................... 78
Urządzenia standardowe ............................................................................................ 81
Przykład — kopiowanie wielu plików do standardowego wyjścia .............. 82
Przykład — proste szyfrowanie pliku ..................................................................... 85
Zarządzanie plikami i katalogami ............................................................................ 88
Operacje wejścia-wyjścia konsoli ............................................................................ 94
Przykład — wyświetlanie danych i instrukcji ....................................................... 96
Przykład — wyświetlanie bieżącego katalogu .................................................... 99
Podsumowanie ............................................................................................................100
Ćwiczenia .......................................................................................................................101
Rozdział 3. Zaawansowane przetwarzanie plików i katalogów
oraz rejestr ..........................................................................103
64-bitowy system plików .........................................................................................104
Wskaźniki do plików ...................................................................................................104
Pobieranie rozmiaru plików ....................................................................................109
Przykład — bezpośrednie aktualizowanie rekordów .....................................111
Atrybuty plików i przetwarzanie katalogów ......................................................115
Przykład — wyświetlanie atrybutów plików .....................................................121
Przykład — ustawianie znaczników czasu dla plików ....................................125
Strategie przetwarzania plików ..............................................................................126
Blokowanie dostępu do plików ..............................................................................128
Rejestr .............................................................................................................................134
Zarządzanie rejestrem ...............................................................................................137
Przykład — wyświetlanie kluczy i zawartości rejestru ....................................141
Podsumowanie ............................................................................................................145
Ćwiczenia .......................................................................................................................146
Rozdział 4. Obsługa wyjątków ..............................................................149
Wyjątki i procedury do ich obsługi ........................................................................150
Wyjątki zmiennoprzecinkowe ................................................................................157
Błędy i wyjątki ...............................................................................................................159
Przykład — traktowanie błędów jak wyjątków .................................................161
Procedury obsługi zakończenia .............................................................................163
Przykład — stosowanie procedur obsługi zakończenia
do poprawy jakości programów .........................................................................167
Przykład — stosowanie funkcji filtrującej ...........................................................170
Procedury sterujące konsoli ....................................................................................175
Przykład — procedura sterująca konsoli .............................................................176
Wektorowa obsługa wyjątków ...............................................................................178
Podsumowanie ............................................................................................................180
Ćwiczenia .......................................................................................................................181
S
PIS
TRE¥CI
7
Rozdział 5. Zarządzanie pamięcią, pliki odwzorowane w pamięci
i biblioteki DLL ....................................................................183
Architektura zarządzania pamięcią w systemie Windows ............................184
Sterty ...............................................................................................................................187
Zarządzanie pamięcią na stercie ............................................................................191
Przykład — sortowanie plików
za pomocą binarnego drzewa wyszukiwań ....................................................198
Pliki odwzorowane w pamięci ................................................................................203
Przykład — sekwencyjne przetwarzanie pliku
za pomocą plików odwzorowanych .................................................................212
Przykład — sortowanie pliku odwzorowanego w pamięci ..........................215
Przykład — stosowanie wskaźników z bazą ......................................................218
Biblioteki DLL ................................................................................................................224
Przykład — dołączanie w czasie wykonywania programu funkcji
do konwersji plików ................................................................................................231
Punkt wejścia do biblioteki DLL .............................................................................232
Zarządzanie wersjami bibliotek DLL .....................................................................234
Podsumowanie ............................................................................................................236
Ćwiczenia .......................................................................................................................237
Rozdział 6. Zarządzanie procesem ........................................................241
Procesy i wątki w systemie Windows ...................................................................241
Tworzenie procesu .....................................................................................................244
Dane identyfikacyjne procesów .............................................................................251
Powielanie uchwytów ...............................................................................................252
Wychodzenie z procesu i kończenie jego działania ........................................254
Oczekiwanie na zakończenie działania procesu ...............................................256
Bloki i łańcuchy znaków środowiska ....................................................................258
Przykład — równoległe wyszukiwanie wzorca .................................................260
Procesy w środowisku wieloprocesorowym ......................................................264
Czas wykonywania procesu .....................................................................................265
Przykład — czas wykonywania procesu ..............................................................265
Generowanie zdarzeń sterujących konsoli .........................................................267
Przykład — proste zarządzanie zadaniem ..........................................................268
Przykład — korzystanie z obiektów zadań .........................................................279
Podsumowanie ............................................................................................................283
Ćwiczenia .......................................................................................................................284
Rozdział 7. Wątki i szeregowanie ..........................................................287
Wprowadzenie do wątków ......................................................................................287
Podstawowe informacje o wątkach ......................................................................290
Zarządzanie wątkami .................................................................................................291
Stosowanie biblioteki języka C w wątkach .........................................................296
Przykład — wielowątkowe wyszukiwanie wzorca ...........................................298
Zgłoś jeśli naruszono regulamin