Home | FAQ | Contact

Private Seminars
Public Seminars
Course Descriptions
Course Map
Instructors
Resources

APP210
CMB221
DBG211
DBG214
DBG311
DRV101
DRV150
DRV201
DRV203
DRV204
DRV205
DRV211
DRV221
DRV222
DRV231
DRV232
DRV251
DRV264
DRV274
DRV280
DRV301
DRV350
INT150
INT201
INT250
SEC230
SEC240
WSC150
WSC250

APP210: Windows Application Development: An Internals Approach

For programmers new to Windows and Win32 programming, this seminar provides an introduction to the idioms of Windows and an orientation to APIs and mechanisms commonly used in "systems level" programs. 

Level

Basic to intermediate

Audience

Win32 application developers

Description

For programmers new to Windows, this seminar provides a fast orientation to application development for Win32 using Visual Studio and the C programming language. Particular attention is paid to APIs that deal with mechanisms described in our Windows Internals seminar.

Topics

  • Introduction to Win32 base APIs and C programming conventions

  • Hello, (Win32) World

  • Issues, styles, and conventions: Status returns; strings and Unicode; handles

  • Creating and working with processes and threads

  • Writing, installing, and running a service

  • Interprocess and interthread synchronization: waitable objects; wait calls; critical sections; timers

  • Conventional input/output: CreateFile; ReadFile; Writeful

  • Asynchronous I/O; I/O completion ports

  • Named pipes; WinSock

  • Memory management: DLLs with link-time binding; run-time binding (LoadLibrary); VirtualAlloc; memory mapped files

  • Win32 structured exception handling

  • 64-bit compatibility issues

Prerequisites

INT201, Windows Internals, or INT150, Windows Internals Essentials for Application Developers, or equivalent experience; and experience developing C programs for any platform.

Windows versions

Windows 7, Server 2008, Vista, Windows Server 2003, Windows XP, Windows 2000

Duration and formats

3 days with labs

Labs

This seminar is designed with a series of lab exercises that illustrate and amplify the points presented in the classroom presentation. Attendees will be given machine-readable copies of example solutions, often including several alternate approaches.
 

Copyright © 2010 by Azius Developer Training