Course Overview:
This course teaches students about a number of the more important 32-bit API functions. It does
not address GUI issues, however.

Goals:
Provided students meet the prerequisites, at the end of the course they should have a good understanding of the following:

1. Be knowledgeable about internationalization in general and about Microsoft's and C/C++'s support for it in particular.
2. Be able to debug scientifically an access violation.
3. Be starting to think about how to handle API errors in a rational fashion from within production programs.
4. Be able to understand what a thread is, how one is created, and why multithreading is important.

5. Understand objects and handles.
6. Understand the need for and method of achieving interprocess communication.

Who This Course Is Appropriate For:
Programmers and technical managers who need to implement or manage projects using the 32-bit API.

Prerequisites:
Students are expected to be fluent in C or C++. Some knowledge of the workings of a sophisticated operating system would be beneficial.

Materials:
Each buyer will receive one or both of the following materials, depending on purchase:

Microsoft Windows 32-bit API – This manuscript was written specifically for teaching. It serves as a useful reference once the course has been completed.
Source Code – An electronic version of all of the source code shown in the text of this course.

Detailed Topics:
The main topics covered are:

- The Memory Layout of Win95/NT

- Internationalization (introduction)
- API Error Detection and Handling
- Threads and Thread Synchronization
- Objects and Handles
- Interprocess Communication