Synopses & Reviews
- The Win32 best-seller, fully updated for Windows 2000 and Windows 98!
- Master every key Win32 system service
- Processes, threads, synchronization, and much more
- Includes extensive coverage of network programming
- The #1 guide to Win32 system services, totally updated!
- Includes hundreds of proven code examples
- Comprehensive coverage of RPCs and other network programming topics
- Processes, threads, and synchronization in depth
- Expert techniques for effective large-scale development
- Leveraging Windows 2000's security capabilities
Get up-to-speed on the Win32 API, fast!
The #1 best-seller now completely updated!
For years, Marshall Brain's Win32 System Services has been the world's #1 resource for Windows developers seeking to master Win32 services in real-world application development. Now, this worldwide bestseller has been fully updated to reflect the latest Win32 enhancements in Windows 2000 and Windows 98!
Each self-contained chapter covers a different API service: Win32 files, directory and drive structure, processes and threads, synchronization mechanisms, network communications, Remote Procedure Calls, security, consoles, communications ports, accessing system information, using DLLs to modularize programs, and much more.
You'll find practical guidance on when to use each service, today's best techniques for integrating services into complex, enterprise-class applications, and extensive proven code examples. Whether you're an experienced Windows developer seeking to deepen your system programming skills, or you're porting applications from other environments, Win32 System Services - The Heart of Windows 98 and Windows 2000, Third Edition will be your most valuable resource.
About the Author
MARSHALL BRAIN is founder and principal of Interface Technologies, Research Triangle Park, NC. His firm specializes in software training for developers at leading financial companies. His recent Prentice Hall PTR books include Developing Professional Applications for Windows 98 and NT Using MFC
and Windows CE 3.0: Application Programming
(with Nick Gratten).
RON REEVES is President of Computer Engineering, Inc., a leading consulting and training company based in Howell, MI.
Table of Contents
One Hundred and Twenty-one Questions About Windows 2000 and 98. Compiling Code. Terminology. Error Handling. Handles and Objects. Using the Microsoft Documentation. Bugs in the 32-Bit API. Differences Between Windows 98 and Windows 2000.
The Possibilities. Overview. Opening and Reading from a File. Getting and Setting File Information. File Operations. Temporary Files. File Reading and Writing. Asynchronous File Operations. File Locking. Compressed Files. File Mapping. Conclusion.
The Possibilities. Getting Volume Information. Getting Drive Types. Getting Free Space. Getting Logical Drives and Drive Strings. Setting the Volume Label. WNet Functions. Conclusion.
The Possibilities. Creating and Deleting Directories. Getting and Setting the Current Directory. Searching for a File. Traversing Directory Trees. Combining Capabilities. Detecting Changes to Directories and Files. Conclusion.
5. Active Directory.
The Possibilities. Introduction to Active Directory. Active Directory Architecture. Frequently Asked Questions. Conclusion.
6. Process and Threads.
The Possibilities. Introduction. Simple Examples. Using Threads in GUI Applications. Matching the Number of Threads to the Number of CPU's. Using Thread Local Storage. Thread Priorities. Other Thread Functions. Processes. Inheriting Handles. Interprocess Communication. Jobs. Conclusion.
Understanding the Problem. Four Different Synchronization Methods. Deadlocks, Starvation, and Other Synchronization Bugs. Wait Functions. Overlapped I/O. Change Functions. Integrating Synchronization into MFC Programs. Conclusion.
8. Network Communications.
The Possibilities. Understanding Your Options. Mailslots. Named Pipes. Named Pipe Client/Server Systems. Connection with UNIX and Other TCP/IP Machines. UDP Connections. TCP Connections. Conclusion.
9. Remote Procedure Calls.
The Possibilities. The Basic Idea. Design Issues. Creating RPCs. Understanding RPCs at a High Level. Parameter Passing. Understanding the Code. Setting up a Name Server in the Registry. Manual Binding with Implicit Handles. An RPC Server for Mandelbrot Sets. Improving the Mandelbrot RPC Server. Explicit Handles. Context Handles. Common Questions. Conclusion.
10. Distribute COM (DCOM).
DCOM Architecture. Components and Reuse. Location Independence. Connection Management. Scalability. Conclusion.
The Possibilities. Understanding Serial Communications. A Simple Communications Application. Getting Communications Events. A Simple Bulletin Board System. Flow Control. A Simple TTY Terminal Program. Other Communications Functions. Conclusion.
12. Windows 2000 Services.
The Possibilities. Understanding Services. S ervice Choreography. The Simplest Service. Installing and Removing a Service. Displaying Dialogs from within a Service. Multiple Services in an Executable. Getting and Setting Configuration Information. Controlling Services. Enumerating Services. Placing an RPC Server in a Server. Conclusion.
The Possibilities. -Understanding the Terminology and Concepts of the Windows 2000 Security _System. Windows 2000 Security Vocabulary. Simple Examples. Securable Objects and Access Rights. Examining Existing Access Tokens and Security Descriptors. Privileges. Adding and Deleting ACEs. Impersonation. Conclusion.
The Possibilities. Raw versus Cooked Input. Simple Examples. Raw Input. Other Input Events. Other Capabilities. Conclusion.
15. Microsoft Management Console (MMC).
The Possibilities. MMC Interfaces and Methods. ATL Snap-In Wizard. Conclusion.
16. System Information.
The GetSystemInfo Function. Other System Information Functions. Getting and Setting Environment Strings. Shutting Down the System.
17. Dynamic Link Libraries.
The Possibilities. Overview. Creating a Simple DLL. Understanding a Simple DLL. Load-time versus Run-time Linking. DLL Entry Points. Memory Models. Conclusion.
18. Component Object Model (COM).
COM Fundamentals. Component Object Library. Summary.
COM+ Programming Overview. COM+ Application Overview. Developing COM+ Applications. COM+ Design Assumptions and Principles. Conclusion.
20. -Windows Distributed Network _Architecture (DNA).
Frequently Asked Questions about Windows DNA. Microsoft Windows Distributed Internet Application Architecture. The Presentation Tier. Business Services Tier. Data Services Tier. Conclusion.
Registry. The Event Log. Time. Memory. Structured Exception Handling. Error Handling.
Appendix A: Compiling the Code in This Book.
Appendix B: Contacting the Authors.
Appendix C: Error Codes.