Programowanie Windows 98/NT. Księga eksperta - Helion

Tytuł oryginału: Programing Windows 98/NT Unleashed
Tłumaczenie: Marcin Pancewicz
ISBN: 83-7197-101-X
stron: 968, Format: B5, okładka: miękka
Data wydania: 1999-09-13
Księgarnia: Helion
Cena książki: 140,00 zł
Książka zawiera dokładne wyjaśnienia głównych cech oraz zawiłości programowania w systemach Windows 98 i NT. Dzięki niej czytelnik dowie się w jaki sposób:
- Pisać 32-bitowe aplikacje przeznaczone dla systemu Windows
- Poznać najgłębsze tajniki Windows oraz Win32 API
- Wykorzystać moc Microsoft Foundation Classes (MFC)
- Wykorzystać technologie przeciągnij-i-upuść
- Uzyskać dostęp do danych za pomocą ODBC, OLE DB oraz ADO
- Analizować i zarządzać pamięcią
- Zrozumieć architekturę telefoniczną wykorzystując TAPI
- Zrozumieć zasady przekazywania wiadomości i dodać obsługę poczty elektronicznej do własnych aplikacji
- Opanować zagadnienia wielozadaniowości dzięki wykorzystaniu wątków oraz pamięci wirtualnej
- Zaimplementować trwałość dzięki programowaniu Rejestru Windows
- Używać kanałów oraz zdalnego wywoływania procedur do tworzenia aplikacji klient/serwer
- Tworzyć oprogramowanie przy wykorzystaniu Microsoft Transaction Server
- Nauczyć się sposobów implementacji programów międzynarodowych
Osoby które kupowały "Programowanie Windows 98/NT. Księga eksperta", wybierały także:
- Prompt engineering. Kurs video. Precyzyjne tworzenie zapyta 166,25 zł, (39,90 zł -76%)
- Projektowanie oprogramowania dla zupełnie początkujących. Owoce programowania. Wydanie V 125,48 zł, (38,90 zł -69%)
- Architektura ewolucyjna. Projektowanie oprogramowania i wsparcie zmian 57,74 zł, (17,90 zł -69%)
- F# 4.0 dla zaawansowanych. Wydanie IV 96,45 zł, (29,90 zł -69%)
- Systemy reaktywne. Wzorce projektowe i ich stosowanie 65,31 zł, (20,90 zł -68%)
Spis treści
Programowanie Windows 98/NT. Księga eksperta -- spis treści
O autorze (25)
Przedmowa (27)
Część I. Wprowadzenie do środowiska programisty (33)
Rozdział 1. Środowisko programisty (35)
- Korzystanie z kompilatora (35)
- Użycie narzędzi linii poleceń (36)
- Zasoby (37)
- Pliki wykonywalne i DLL-e (37)
- Zintegrowane środowisko programisty (39)
- Zintegrowany edytor (40)
- Debugger (40)
- Edycja zasobów (41)
- Obszary robocze projektów (41)
- Korzystanie z szablonów projektów (42)
- Komponenty (43)
- Różne narzędzia (43)
- Profilowanie (44)
- Kontrola wersji (45)
- Wykorzystanie właściwości Visual C++ (45)
- Tworzenie projektów przy pomocy kreatorów AppWizard (45)
- Dodawanie funkcji przy pomocy ClassWizarda (53)
- Korzystanie z galerii komponentów (60)
- Użycie debuggera w Visual C++ (61)
- Podsumowanie (63)
Część II. Pod maską: Okna i Win32 API (65)
Rozdział 2. Przegląd systemu operacyjnego (67)
- Okna i komunikaty (67)
- Aplikacje, wątki i okna (68)
- Klasy okien (69)
- Rodzaje komunikatów (70)
- Komunikaty i wielozadaniowość (72)
- Kolejki komunikatów (72)
- Procesy i wątki (72)
- Wątki i komunikaty (73)
- Wywołania funkcji Windows (73)
- Usługi jądra (74)
- Usługi modułu User (76)
- Usługi GDI (77)
- Inne API (78)
- Zgłaszanie błędów (79)
- Używanie standardowych funkcji bibliotecznych C/C++ (79)
- Różnice pomiędzy platformami (80)
- Podsumowanie (80)
Rozdział 3. Pętla komunikatów (83)
- "Prawdziwy" program Hello, World (83)
- Prosta pętla komunikatów: komunikaty wysyłane i przekazywane (85)
- Procedury okien (87)
- Porównanie z programem generic.c (90)
- Zastosowanie kilku pętli komunikatów i procedur okien (90)
- Podsumowanie (94)
Rozdział 4. Okna, dialogi i kontrolki (95)
- Hierarchia okien (96)
- Zarządzanie oknami (98)
- Funkcja RegisterClass oraz struktura WNDCLASS (98)
- Tworzenie okna funkcją CreateWindow (100)
- Style rozszerzone oraz funkcja CreateWindowEx (101)
- Rysowanie zawartości okna (102)
- Komunikat WM_PAINT (102)
- Odświeżanie okna poprzez unieważnienie jego zawartości (103)
- Komunikaty zarządzania oknami (103)
- Klasy okien (106)
- Procedura okna (106)
- Subclassing (107)
- Globalny Subclassing (109)
- Superclassing (111)
- Okna dialogowe (112)
- Modalne okna dialogowe (113)
- Niemodalne okna dialogowe (113)
- Okna komunikatów (114)
- Szablony dialogów (115)
- Procedura okna dialogowego (115)
- Standardowe okna dialogowe (115)
- Okna dialogowe Otwórz i Zapisz jako (116)
- Okno dialogowe wyboru koloru (117)
- Okno wyboru czcionki (118)
- Okna dialogowe wydruku i przygotowania wydruku (119)
- Okna dialogowe wyszukiwania i zastępowania tekstu (120)
- Przykład standardowych okien dialogowych (121)
- Standardowe dialogi OLE (123)
- Kontrolki (123)
- Podsumowanie (126)
Rozdział 5. Pliki zasobów (129)
- Elementy pliku zasobów (130)
- Preprocesor pliku zasobów (131)
- Instrukcje w pojedynczych liniach (131)
- Instrukcje składające się z kilku linii (132)
- Zasoby zdefiniowane przez użytkownika i zasoby binarne (138)
- Kompilowanie i wykorzystanie skryptów zasobów (139)
- Uruchamianie kompilatora zasobów (139)
- Uruchamianie linkera (139)
- Biblioteki DLL z zasobami (139)
- Podsumowanie (140)
Rozdział 6. Rysowanie i konteksty urządzeń (141)
- GDI, sterowniki urządzeń i urządzenia wyjściowe (142)
- Konteksty urządzeń (143)
- Rodzaje kontekstów urządzeń (143)
- Konteksty pamięci i metaplików (144)
- Konteksty informacyjne (145)
- Współrzędne (145)
- Współ rzędne logiczne i współ rzędne urządzenia (145)
- Ustalone tryby odwzorowania (147)
- Transformacje układu współrzędnych (148)
- Obiekty graficzne (154)
- Pióra (155)
- Pędzle (156)
- Czcionki (157)
- Palety (157)
- Bitmapy (162)
- Obcinanie (162)
- Funkcje graficzne (165)
- Odcinki (166)
- Krzywe (167)
- Wypełnione kształty (168)
- Regiony (168)
- Bitmapy (169)
- Ścieżki (170)
- Napisy (170)
- Uwagi na temat drukowania (171)
- Podsumowanie (171)
Rozdział 7. Wątki i procesy (173)
- Wielozadaniowość w środowisku Win32 (174)
- Koncepcje wielozadaniowości (174)
- Wielozadaniowość ze współpracą (175)
- Wielozadaniowość z wywłaszczaniem w Windows NT (176)
- Windows 95/98: mieszanka sztuczek z wielozadaniowością (177)
- Programowanie z użyciem procesów i wątków (178)
- Wielozadaniowość ze współpracą: przekazywanie sterowania w pętli komunikatów (179)
- Przetwarzanie komunikatów podczas długich obliczeń (179)
- Użycie dodatkowego wątku (182)
- Obiekty wątków (185)
- Tworzenie i zarządzanie procesami (185)
- Obiekty synchronizacji (186)
- Programowanie z użyciem obiektów synchronizacji (188)
- Podsumowanie (189)
Rozdział 8. Zarządzanie pamięcią (191)
- Procesy i pamięć (191)
- Oddzielne przestrzenie adresowe (192)
- Przestrzeń adresowa (192)
- Pamięć wirtualna (193)
- Programy 32-bitowe (195)
- Rozmiar liczb całkowitych (196)
- Modyfikatory typów i makra (196)
- Obliczanie adresu (197)
- Funkcje biblioteczne (197)
- Modele pamięci (197)
- Funkcje selektorów (198)
- Proste zarządzanie pamięcią (198)
- Alokacja pamięci poprzez malloc i new (198)
- Problem zabłąkanych wskaźników (199)
- Aplikacje korzystające ze wspólnej pamięci (200)
- Pamięć wirtualna i zaawansowane zarządzanie pamięcią (200)
- Zarządzanie pamięcią wirtualną w Win32 (201)
- Funkcje pamięci wirtualnej (201)
- Funkcje sterty (204)
- Windows API i standardowe funkcje zarządzania pamięcią (205)
- Funkcje inne i przestarzałe (205)
- Pliki odwzorowane w pamięci i pamięć wspólna (206)
- Wspólna pamięć i wskaźniki bazowane (208)
- Wątki i zarządzanie pamięcią (209)
- Blokowany dostęp do zmiennej (209)
- Prywatne dane wątku (209)
- Dostęp do pamięci fizycznej i portów wejścia/wyjścia (210)
- Podsumowanie (210)
Rozdział 9. Zarządzanie plikami (213)
- Przegląd systemu plików (214)
- Obsługiwane systemy plików (214)
- CD-ROM (214)
- Dyski sieciowe (215)
- Kompresja plików i wolumenów (215)
- Obiekty plików Win32 (215)
- Tworzenie i otwieranie plików (215)
- Proste wejście i wyjście (216)
- Asynchroniczne operacje wejścia/wyjścia (217)
- Niskopoziomowe operacje wejścia/wyjścia (223)
- Deskryptory plików (223)
- Deskryptory standardowych plików (223)
- Funkcje niskiego poziomu (223)
- Strumienie (224)
- Strumienie w C (224)
- Strumienie w C++ (klasy iostream) (225)
- Urządzenia specjalne (226)
- Wejście/wyjście na konsolę (226)
- Porty komunikacyjne (227)
- Podsumowanie (228)
Rozdzial 10. Schowek Windows (231)
- Formaty schowka (231)
- Standardowe formaty schowka (232)
- Formaty rejestrowane (233)
- Formaty prywatne (234)
- Operacje na schowku (234)
- Przenoszenie danych do schowka (234)
- Przekazywanie danych na żądanie (235)
- Wklejanie danych ze schowka (235)
- Schowek i kontrolki (236)
- Komunikaty schowka (236)
- Przeglądarki schowka (236)
- Prosta implementacja (237)
- Podsumowanie (241)
Rozdział 11. Rejestr (243)
- Struktura Rejestru (243)
- Wartości Rejestru (244)
- Pojemność Rejestru (245)
- Predefiniowane klucze (245)
- Ręczna edycja Rejestru (246)
- Często używane klucze (247)
- Poddrzewa w HKEY_LOCAL_MACHINE (247)
- Poddrzewa w HKEY_CLASSES_ROOT (248)
- Poddrzewa w HKEY_USERS (249)
- Poddrzewa w HKEY_CURRENT_USER (249)
- Rejestr i pliki INI (250)
- Aplikacje korzystające z Rejestru (250)
- Otwieranie klucza Rejestru (250)
- Odczytywanie wartości (251)
- Ustawianie wartości (251)
- Tworzenie nowego klucza (251)
- Inne funkcje Rejestru (252)
- Działający przykład (252)
- Podsumowanie (256)
Rozdział 12. Obsługa wyjątków (257)
- Obsługa wyjątków w C i C++ (257)
- Wyjątki C (257)
- Obsługa zakończenia działania C (262)
- Obsługa wyjątków C++ (263)
- Obsługa zakończenia działania w C++ (264)
- Klasy wyjątków C++ (265)
- Łączenie wyjątków C i C++ (265)
- Użycie wielokropka (266)
- Tłumaczenie wyjątków C (268)
- Podsumowanie (269)
Część III. Microsoft Foundation Classes (271)
Rozdział 13. Szkielet aplikacji MFC (273)
- MFC i aplikacje (273)
- Podstawy MFC (274)
- Szkielet prostej aplikacji MFC (276)
- Tworzenie projektu YAH (276)
- Obiekt aplikacji (277)
- Mapa komunikatów (282)
- Ramka, dokument oraz widok (283)
- Dodawanie kodu do aplikacji (292)
- Dodawanie zasobu tekstowego (292)
- Modyfikowanie dokumentu (293)
- Modyfikowanie widoku (294)
- Podsumowanie (295)
Rozdział 14. Praca z dokumentami i widokami (297)
- Klasa CDocument (297)
- Deklarowanie klasy dokumentu w aplikacji (298)
- Metody klasy CDocument (299)
- Dokumenty, zdarzenia oraz przesłaniane funkcje (300)
- Dane dokumentu (302)
- CCmdTarget i CDocItem (304)
- Klasa CView (306)
- Deklarowanie klasy widoku (306)
- Metody klasy CView (308)
- Widoki i komunikaty (309)
- Odmiany klasy CView (310)
- Aplikacje oparte na oknie dialogowym (310)
- Podsumowanie (311)
Rozdział 15. Dialogi i arkusze właściwości (313)
- Konstruowanie dialogów (314)
- Dodawanie szablonu dialogu (314)
- Tworzenie klasy dialogu (315)
- Dodawanie zmiennych składowych (316)
- Wyniki działań ClassWizarda (317)
- Wywoływanie okna dialogowego (319)
- Niemodalne okna dialogowe (321)
- Więcej na temat DDX (323)
- Wymiana danych dialogu (323)
- Zatwierdzanie danych dialogu (324)
- Zastosowanie prostych typów (324)
- Zastosowanie typów kontrolek (325)
- Implementowanie własnych typów danych (326)
- Dialogi i obsługa komunikatów (326)
- Arkusze właściwości (327)
- Konstruowanie karty właściwości (328)
- Dodawanie obiektu arkusza właściwości (331)
- Metody klasy CPropertyPage (332)
- Niemodalne arkusze właściwości (333)
- Podsumowanie (336)
Rozdział 16. Standardowe dialogi i standardowe kontrolki w MFC (339)
- Standardowe dialogi (340)
- CColorDialog (341)
- CFileDialog (341)
- CFindReplaceDialog (342)
- CFontDialog (344)
- CPageSetupDialog (345)
- CPrintDialog (345)
- COleDialog (347)
- Standardowe kontrolki (347)
- Kontrolki animacji (348)
- Kontrolka wyboru daty i czasu (349)
- Kontrolka nagłówka (350)
- Kontrolka skrótu (350)
- Kontrolka adresu IP (351)
- Kontrolka listy (351)
- Kontrolka kalendarza miesięcznego (353)
- Pasek postępu (353)
- Kontrolka Rich-Text Edit (354)
- Suwak (355)
- Pokrętło (356)
- Pasek stanu (356)
- Zakładki (357)
- Pasek narzędzi (358)
- Etykietki narzędzi (359)
- Kontrolka drzewa (359)
- Podsumowanie (361)
Rozdział 17. Zastosowanie kontrolek ActiveX (363)
- Dodawanie kontrolek ActiveX do aplikacji (364)
- Tworzenie pojemnika kontrolki (365)
- Dodawanie kontrolki ActiveX do szablonu dialogu (365)
- Ustawianie właściwości kontrolki (366)
- Dodawanie zmiennych składowych (367)
- Obsługa komunikatów (371)
- Kontrolki ActiveX dostarczane wraz z Visual C++ (372)
- Podsumowanie (372)
Rozdział 18. Kontekst urządzenia i obiekty GDI (375)
- Konteksty urządzeń (376)
- Bazowa klasa CDC (376)
- Tworzenie kontekstu urządzenia (377)
- Konteksty urządzeń czasu rysowania (378)
- Konteksty urządzeń obszaru roboczego (378)
- Konteksty urządzeń okna (379)
- Konteksty urządzeń metapliku (379)
- Atrybuty klasy CDC (380)
- Odwzorowanie współrzędnych i widoki (381)
- Proste funkcje graficzne (383)
- Wybieranie obiektów GDI (383)
- Podstawowe linie i kształty (384)
- Bitmapy i przewijanie (385)
- Funkcje tekstu i czcionek (386)
- Operacje obcinania (387)
- Drukowanie (387)
- Funkcje ścieżek (388)
- Obiekty GDI obsługiwane przez MFC (388)
- Pióra (389)
- Pędzle (390)
- Bitmapy (390)
- Czcionki (391)
- Palety (391)
- Regiony (392)
- Podsumowanie (393)
Rozdział 19. Serializacja: obiekty plików i archiwów (395)
- Klasa CFile (396)
- Inicjalizacja obiektów CFile (397)
- Odczyt z obiektu i zapis do obiektu CFile (397)
- Zarządzanie plikami (398)
- Obsługa błędów (398)
- Blokowanie (398)
- Zastosowanie obiektu CFile w prostej aplikacji (399)
- Klasa CStdioFile (399)
- Klasa CInternetFile (400)
- Klasa CMemFile (400)
- Klasa COleStreamFile (401)
- Klasa CSocketFile (401)
- CArchive (402)
- Tworzenie obiektów CArchive (402)
- Odczyt i zapis obiektów (403)
- Przeciążone operatory >> i << (403)
- Metoda CObject::Serialize (404)
- Obsługa błędów (405)
- Użycie CArchive w prostych aplikacjach (405)
- Serializacja w aplikacjach MFC (407)
- Serializacja w dokumentach (407)
- Pomocnicze makra (407)
- Serializacja, OLE oraz schowek (408)
- Podsumowanie (408)
Rozdział 20. Klasy kolekcji (411)
- Kolekcja CObject (412)
- Klasa CObList i typ POSITION (412)
- Klasa CObArray (415)
- Inne kolekcje list (417)
- Klasa CPtrList (417)
- Klasa CStringList (417)
- Inne kolekcje tablic (418)
- Klasa CPtrArray (418)
- Klasy tablic typów całkowitych (418)
- Klasa CStringArray (419)
- Odwzorowania (419)
- Klasa CMapStringToString (420)
- Klasa CMapStringToOb (422)
- Klasa CMapStringToPtr (423)
- Klasa CMapPtrToPtr (423)
- Klasa CMapPtrToWord (423)
- Klasa CMapWordToOb (423)
- Klasa CMapWordToPtr (424)
- Kolekcje obiektów oparte na wzorcach (424)
- Pomocnicze funkcje klas kolekcji (425)
- Wzorzec CList (426)
- Wzorzec CArray (427)
- Wzorzec CMap (428)
- Wzorzec CTypedPtrList (429)
- Wzorzec CTypedPtrArray (430)
- Wzorzec CTypedPtrMap (430)
- Podsumowanie (430)
Rozdział 21. Klasy obsługi Internetu (433)
- Architektura internetowych klas MFC (433)
- Sesje Internetu (434)
- Połączenia internetowe (435)
- Pliki internetowe (437)
- Inne klasy pomocnicze (437)
- Zastosowanie internetowych klas MFC w aplikacjach (438)
- Komunikowanie się z serwerem FTP (438)
- Komunikowanie się z serwerem Gopher (439)
- Komunikowanie się z serwerem HTTP (440)
- Podsumowanie (441)
Rozdział 22. Wyjątki, wielowątkowość i inne klasy MFC (443)
- Korzystanie z wyjątków w aplikacjach MFC (444)
- Obsługa wyjątków przy pomocy makr (444)
- Wyjątki C++ i klasa CException (445)
- Klasa CMemoryException (446)
- Klasa CFileException (447)
- Klasa CArchiveException (448)
- Klasa CNotSupportedException (449)
- Klasa CResourceException (449)
- Klasa CDaoException (450)
- Klasa CDBException (450)
- Klasa CInternetException (450)
- Klasa COleException (451)
- Klasa COleDispatchException (451)
- Klasa CUserException (451)
- Zgłaszanie wyjątków MFC (451)
- MFC i wielowątkowość (452)
- MFC bezpieczne ze względu na wątki (452)
- Tworzenie wątków w MFC (453)
- Synchronizacja wątków (454)
- Klasa CEvent (455)
- Klasa CMutex (455)
- Klasa CCriticalSection (456)
- Klasa CSemaphore (456)
- Synchronizacja z użyciem klas CSingleLock i CMultiLock (456)
- Pozostałe klasy MFC (457)
- Klasy prostych typów (457)
- Struktury i klasy pomocnicze (458)
- Podsumowanie (460)
Część IV. OLE, COM i Aplikacje MFC (463)
Rozdział 23. OLE, ActiveX oraz model COM (465)
- Podstawy OLE oraz model COM (465)
- Interfejsy i metody (466)
- Metody i alokacja pamięci (467)
- Dziedziczenie i ponowne wykorzystywanie obiektów (468)
- Identyfikatory interfejsów (468)
- Definicja interfejsu poprzez IUnknown (468)
- Obiekty klas i rejestracja (469)
- Komunikacja między obiektami (469)
- Monikery (470)
- COM i wątki (471)
- COM i łączone dokumenty (471)
- Ustrukturyzowane składowanie (471)
- Przekazywanie danych (472)
- Dokumenty łączone (473)
- Aplikacje COM i OLE (474)
- Serwery i pojemniki dokumentów OLE (474)
- Automatyzacja (474)
- Przeciąganie i upuszczanie OLE (475)
- Kontrolki ActiveX (475)
- Własne interfejsy (475)
- Prosty przykład (476)
- Opis funkcjonalny (476)
- Aplikacja serwera Hello (477)
- Rejestracja i uruchomienie serwera (484)
- Dostęp do serwera z C++ (485)
- Podsumowanie (486)
Rozdział 24. Serwery OLE (489)
- Koncepcje serwerów (489)
- Full-Server i Mini-Server (489)
- Edycja na miejscu (490)
- Aktywizacja serwera (490)
- Tworzenie aplikacji serwera w MFC (490)
- Użycie AppWizarda do tworzenia szkieletu aplikacji (490)
- Szkielet aplikacji serwera OLE (491)
- Element serwera (492)
- COleDocument i elementy dokumentu (494)
- Okno ramki edycji na miejscu (494)
- Tryby działania i zasoby (494)
- Uruchamianie aplikacji serwera (496)
- Dostosowywanie serwera szkieletowego (497)
- Modyfikowanie dokumentu (497)
- Dodawanie kodu rysowania (498)
- Dodanie okna dialogowego (500)
- Serializacja (501)
- Rejestrowanie nowej aplikacji (502)
- Podsumowanie (503)
Rozdział 25. Pojemniki OLE (505)
- Tworzenie aplikacji pojemnika w MFC (505)
- Tworzenie szkieletowej aplikacji (505)
- Szkieletowa aplikacja pojemnika OLE (506)
- Uruchamianie szkieletowego pojemnika (506)
- Kod szkieletowego pojemnika (509)
- Menu pojemnika (516)
- Dostosowywanie aplikacji pojemnika do potrzeb użytkownika (517)
- Położenie obiektów (518)
- Rysowanie wszystkich obiektów (520)
- Zaznaczanie obiektów (521)
- Inne właściwości (523)
- Podsumowanie (524)
Rozdział 26. Przeciągnij i upuść w OLE (527)
- Podstawy technologii przeciągnij i upuść (527)
- Tworzenie aplikacji pojemnika (528)
- Tworzenie aplikacji (528)
- Dodawanie obsługi położenia elementów (528)
- Dodawanie obsługi selekcji (531)
- Dodawanie obsługi mechanizmu przeciągnij i upuść (532)
- Implementowanie źródła przeciągania (532)
- Implementowanie celu przeciągania (534)
- Podsumowanie (541)
Rozdział 27. Automatyzacja (543)
- Budowanie serwera automatyzacji (543)
- Konstruowanie szkieletu aplikacji ASRV (544)
- Implementowanie obliczeń (545)
- Dodawanie obsługi automatyzacji (548)
- Biblioteka typów (553)
- Testowanie aplikacji (554)
- Standardowe metody i właściwości (555)
- Obiekt aplikacji (556)
- Kolekcja dokumentów (557)
- Obiekt dokumentu (558)
- Kolekcja obiektów (559)
- Podsumowanie (559)
Rozdział 28. Tworzenie kontrolek ActiveX z użyciem MFC (561)
- Tworzenie szkieletu kontrolki przy pomocy AppWizarda (562)
- Tworzenie szkieletu kontrolki (562)
- Przegląd kodu kontrolki ActiveX (565)
- Dostosowywanie kontrolki (574)
- Tworzenie bitmapy kontrolki (575)
- Dodawanie właściwości (575)
- Czynienie właściwości nieulotną (578)
- Dodawanie metod (579)
- Dodawanie zdarzeń (579)
- Rysowanie kontrolki (581)
- Dodawanie interfejsu karty właściwości (582)
- Edycja karty właściwości (582)
- Łączenie karty właściwości z właściwościami kontrolki (583)
- Dodatkowe karty właściwości (584)
- Testowanie, dystrybucja i używanie własnej kontrolki (585)
- Testowanie kontrolek ActiveX (585)
- Dystrybucja kontrolek ActiveX (585)
- Użycie kontrolek ActiveX w aplikacjach (586)
- Kontrolki ActiveX na stronach WWW (586)
- Podsumowanie (586)
Rozdział 29. Użycie biblioteki ATL (589)
- Dlaczego ATL (589)
- Budowanie kontrolki ActiveX z użyciem ATL (590)
- Tworzenie szkieletu projektu ATL COM (591)
- Dodawanie kontrolki (593)
- Dodawanie właściwości i metod (595)
- Dodawanie kodu rysującego (597)
- Dodawanie karty właściwości (598)
- Obsługa zdarzeń (602)
- Dodawanie bitmapy (606)
- Testowanie kontrolki (607)
- Podsumowanie (609)
Rozdział 30. Dokumenty ActiveX (611)
- Wprowadzenie (611)
- Interfejs dokumentu ActiveX (612)
- Serwery dokumentów ActiveX (613)
- Pojemniki dokumentów ActiveX (613)
- Tworzenie aplikacji dokumentów ActiveX (613)
- Tworzenie pojemnika dokumentów ActiveX (614)
- Tworzenie serwera dokumentów ActiveX (619)
- Modyfikacja istniejącego serwera OLE na serwer dokumentów ActiveX (620)
- Podsumowanie (621)
Rozdział 31. Distributed COM (623)
- COM i DCOM: ewolucja (623)
- Konfigurowanie stacji roboczej klienta (624)
- Program DCOMCNFG.EXE (625)
- Praktyki kodowania (627)
- Poza DCOM: COM+ (629)
- Podsumowanie (630)
Część V. Rozwiązania klient/serwer (631)
Rozdział 32. Programowanie baz danych przy pomocy ODBC (633)
- ODBC w działaniu (634)
- Aplikacja ODBC w Panelu sterowania (634)
- Koncepcje ODBC API (635)
- Prosty przykład ODBC (637)
- Inne wywołania ODBC (641)
- ODBC i standard SQL (643)
- Instrukcje manipulowania danymi (643)
- Widoki (644)
- Instrukcje definiowania danych (645)
- ODBC w aplikacjach MFC (646)
- Przygotowanie źródła danych (646)
- Tworzenie przy pomocy AppWizarda szkieletowej aplikacji ODBC (648)
- Dostosowywanie aplikacji ODBC (653)
- Klasy ODBC w MFC (654)
- Podsumowanie (657)
Rozdział 33. DAO (659)
- Przegląd DAO (659)
- Budowanie aplikacji DAO (661)
- Baza danych (661)
- Tworzenie szkieletowej aplikacji (663)
- Eksploracja szkieletowej aplikacji (665)
- Dopracowywanie aplikacji (669)
- Klasy DAO (671)
- Klasa CDaoRecordset (672)
- Klasa CDaoDatabase (673)
- Klasa CDaoWorkspace (673)
- Klasa CDaoQueryDef (674)
- Klasa CDaoTableDef (674)
- Pozostałe klasy DAO (675)
- Podsumowanie (675)
Rozdział 34. OLE DB i ActiveX Data Objects (677)
- OLE DB (678)
- OLE DB SDK (678)
- Podstawowe założenia (678)
- Działający przykład (680)
- ActiveX Data Objects (684)
- Przegląd obiektów ADO (684)
- Działający przykład (686)
- Podsumowanie (689)
Rozdział 35. Pisanie usług Windows NT (691)
- Usługi w środowisku Windows NT (691)
- Menedżer usług (692)
- Uruchamianie i zatrzymywanie usług (692)
- Usługi i Win32 API (693)
- Tworzenie aplikacji usługi Windows NT (694)
- Wykorzystanie przykładu usługi Windows NT z Windows NT SDK (694)
- Architektura aplikacji usługi Chat (695)
- Główny moduł usługi (696)
- Klasa usługi (699)
- Klasa CSlot (702)
- Kompilowanie i uruchamianie usługi (703)
- Podsumowanie (704)
Rozdział 36. MTS i model trójwarstwowy (705)
- Dynamic HTML (706)
- Trójwarstwowy model klient/serwer (709)
- Warstwy (709)
- Przykładowe implementacje (710)
- Microsoft Transaction Server (711)
- Zagadnienia skalowalności (711)
- Koncepcje MTS (712)
- Programowanie MTS - przegląd (713)
- Podsumowanie (713)
Część VI. Sieci i komunikacja (715)
Rozdział 37. Tworzenie aplikacji MAPI (717)
- Architektura MAPI (718)
- Rodzaje wsparcia dla MAPI (719)
- Dostawcy usług (720)
- Profile MAPI (720)
- Interfejsy programów MAPI (721)
- Simple MAPI (722)
- CMC (724)
- Extended MAPI (726)
- Active Messaging (727)
- Obsługa MAPI w MFC (729)
- Obsługa MAPI w CDocument (729)
- MAPI i AppWizard (729)
- Podsumowanie (730)
Rozdział 38. Programowanie TCP/IP z użyciem WinSock (731)
- Sieci TCP/IP i OSI (732)
- Zestaw protokołów internetowych (732)
- Datagramy IP (733)
- Nagłówki IP (733)
- Adresy hostów IP i routing (734)
- Nazwy hostów (735)
- Pakiety TCP i UDP, numery portów i gniazda (736)
- Usługi internetowe (737)
- WinSock API (737)
- Inicjalizacja WinSock (738)
- Tworzenie i używanie gniazd (738)
- Używanie nazw (739)
- Kolejność bajtów (739)
- Komunikacja poprzez gniazda (740)
- Problem blokowania i funkcja select (742)
- Asynchroniczne funkcje gniazd (742)
- Prosty przykład WinSock (743)
- Programowanie WinSock i MFC (745)
- Przykład użycia CAsyncSocket (745)
- Operacje synchroniczne i serializacja (747)
- Dodatkowe informacje (748)
- Podsumowanie (749)
Rozdział 39. WinInet API (751)
- Protokoły internetowe (752)
- Protokół FTP (File Transfer Protocol) (752)
- Protokół Gopher (754)
- Protokół HTTP (Hypertext Transfer Protocol) (756)
- Biblioteka WinInet (756)
- Pobieranie plików z serwera FTP (757)
- Pobieranie plików z serwera Gopher (759)
- Pobieranie pliku z serwera HTTP (760)
- Inne właściwości i funkcje biblioteki WinInet (761)
- Podsumowanie (761)
Rozdział 40. Aplikacje telefoniczne i TAPI (763)
- Wprowadzenie do TAPI (763)
- Najprostsza aplikacja TAPI (764)
- Koncepcje TAPI (764)
- Urządzenia TAPI (765)
- Numery TAPI (766)
- Architektura oprogramowania TAPI (767)
- Operacje synchroniczne i asynchroniczne (768)
- Struktury o zmiennej długości (769)
- Usługi TAPI (771)
- Model programowania TAPI (772)
- Tryby nośnika (774)
- Współdziałanie aplikacji (774)
- Przykład programu komunikacyjnego (775)
- Podsumowanie (780)
Rozdział 41. Nazwane kanały i zdalne wywołania procedur (783)
- Komunikacja poprzez kanały (783)
- Tworzenie kanałów (784)
- Łączenie się z nazwanymi kanałami (785)
- Przekazywanie danych przez kanały (786)
- Przykład działania (786)
- RPC (zdalne wywołania procedur) (788)
- Podstawy RPC (788)
- Prosty przykład (789)
- Określanie interfejsu (790)
- Implementacja serwera (791)
- Implementacja klienta (793)
- Obsługa wyjątków RPC (795)
- Zaawansowane elementy RPC (796)
- Podsumowanie (797)
Część VII. Grafika i multimedia (799)
Rozdział 42. Aplikacje multimedialne (801)
- Odtwarzanie wideo przy pomocy pojedynczego wywołania funkcji (801)
- Podstawy programowania multimediów (803)
- Formaty danych multimedialnych (804)
- Interfejsy multimediów (805)
- Programowanie przy użyciu klasy MCIWnd (805)
- Klasa okna MCIWnd (806)
- Funkcje MCIWnd (806)
- Makra MCIWnd (808)
- Komunikaty powiadamiające MCIWnd (811)
- Media Control Interface (811)
- Składnia łańcuchów poleceń MCI (813)
- Zestaw poleceń MCI (814)
- Funkcje i makra MCI (815)
- Komunikaty powiadamiające MCI (815)
- Zaawansowane interfejsy (816)
- Funkcje AVIFile i AVIStream (816)
- Sterowniki strumieni i plików użytkownika (816)
- Funkcje DrawDib (816)
- Menedżer kompresji wideo (817)
- Przechwytywanie wideo (817)
- Rejestracja i odtwarzanie dźwięku (817)
- Menedżer kompresji audio (817)
- Odtwarzanie i rejestracja MIDI (817)
- Miksery audio (818)
- Pozostałe usługi multimedialne (818)
- Podsumowanie (818)
Rozdział 43. Biblioteka graficzna OpenGL (821)
- Przegląd OpenGL (822)
- Podstawowe koncepcje OpenGL (822)
- Inicjalizacja (823)
- Rysowanie przy pomocy OpenGL (824)
- Dodatkowe biblioteki (825)
- Tworzenie aplikacji OpenGL Windows w C (826)
- Inicjalizacja OpenGL (828)
- Procedura okna (829)
- Kompilowanie i uruchamianie aplikacji (830)
- OpenGL w aplikacjach MFC (830)
- Inicjalizacja OpenGL (831)
- Rysowanie sześcianu (832)
- Uruchamianie aplikacji (834)
- Podsumowanie (835)
Rozdział 44. Wysokowydajna grafika i dźwięk: DirectX (837)
- Interfejsy API DirectX (838)
- DirectX i model COM (839)
- DirectDraw (839)
- Direct3D (842)
- DirectSound (842)
- DirectPlay (844)
- DirectInput (845)
- DirectShow (845)
- DirectAnimation (845)
- DirectSetup (846)
- Przykład użycia DirectX (846)
- Podsumowanie (853)
Część VIII. Inne zagadnienia (855)
Rozdział 45. Tworzenie pomocy kontekstowej (857)
- Tworzenie plików pomocy (858)
- Tematy pomocy i format RTF (859)
- Plik projektu pomocy (863)
- Plik spisu treści pomocy (864)
- Kompilowanie pomocy (864)
- Makra i pliki DLL (865)
- Wywoływanie pomocy z aplikacji (866)
- Microsoft Help Workshop (867)
- Edycja pliku projektu (867)
- Edycja pliku zawartości pomocy (872)
- Testowanie i uruchamianie pomocy (874)
- Szkieletowe pliki pomocy generowane przez AppWizarda (875)
- Pliki pomocy w postaci dokumentów HTML (875)
- System pomocy HTML (876)
- Tabela zawartości i indeks (876)
- HTML Help API (877)
- HTML Help Workshop (877)
- Podsumowanie (878)
Rozdział 46. Tworzenie programów instalacyjnych (881)
- Wymagania dotyczące programu instalacyjnego (882)
- Rodzaje nośników (882)
- Wykorzystanie kolejnych nośników (883)
- Efektywne przechowywanie (883)
- Opcje wybierane przez użytkownika (883)
- Rejestracja i potwierdzanie tożsamości (883)
- Instalacja warunkowa (883)
- Aktualizacje konfiguracji (884)
- Wspólne komponenty (884)
- Deinstalacja (884)
- InstallShield 5 (884)
- Tworzenie projektu przy pomocy kreatora Project Wizard (885)
- Dodawanie plików (890)
- Edycja zasobów (893)
- Skrypt instalacji (894)
- Tworzenie plików dystrybucyjnych (896)
- Testowanie i debuggowanie (899)
- Podsumowanie (900)
Rozdział 47. Rozszerzenia interfejsu użytkownika (903)
- Współdziałanie z powłoką (903)
- Przestrzeń nazw (904)
- Paski narzędzi aplikacji na pulpicie (AppBar) (904)
- Współdziałanie z paskiem narzędzi (904)
- Tworzenie przeglądarek plików (904)
- Tworzenie bibliotek DLL rozszerzeń powłoki (905)
- Inne rozszerzenia (906)
- Przykłady (906)
- Instalowanie ikony na pasku zadań (907)
- Dodawanie karty właściwości rozszerzenia powłoki (909)
- Podsumowanie (920)
Rozdział 48. Lokalizacja: tworzenie międzynarodowych aplikacji (923)
- Przygotowanie do lokalizacji: praktyki programowania (925)
- Rozmiar tekstu (925)
- Zależności gramatyczne (925)
- Izolowanie informacji specyficznych dla języka (926)
- Dane wprowadzane przez użytkownika (927)
- Języki nieeuropejskie (928)
- Narzędzia do tworzenia aplikacji wielojęzycznych (928)
- Ustawienia regionalne (928)
- Zestawy znaków (931)
- Tworzenie aplikacji Unicode (932)
- Unicode w aplikacjach konsoli (932)
- Unicode w aplikacjach Windows (933)
- Unicode i MFC (935)
- Wielojęzyczne zasoby (936)
- Tłumaczenie interfejsu użytkownika na inny język (936)
- Kilka wersji aplikacji (937)
- Satelitarne biblioteki DLL (938)
- Wielojęzyczne zasoby (938)
- Pliki pomocy (944)
- Zagadnienia instalacji (944)
- Podsumowanie (945)
Skorowidz (947)





