M202b: Windows NT/2000 Network Programming - 3 Days

Who Should Attend:

Software engineers, system analysts, programmers, system developers, and computer science students who need to write client-server networking applications for the Windows 2000/NT environment.

Prerequisites:

Participants are expected to have some prior knowledge of the C programming language, and Win32 system programming API. Participants lacking this knowledge can first enrol in M202a: Windows 2000/NT System Programming.

Objectives:
This module is intended to provide participants with the skills required to write network programs in the Windows 2000/NT environment. It gives participants an in-depth study of how to write network application programs using a variety of mechanisms.
The module begins with a review of the essential features of the Win32 API for systems programming. It discusses the techniques for writing client-server applications, and the technologies provided by Microsoft for creating client/server applications for local area networks (LAN), intranets, the Internet, and other distributed services. Hands-on laboratory sessions will be provided in Visual C++.
At the end of this module, participants should be familiar with writing Win32 API based C programs which use Windows network services or create services for their own usage.



Contents:
Networking Objectives:
Networking Objectives; ISO 7-layer Model; Complexity of Server Design.

Windows Sockets: Windows Sockets 2 Features and Programming; Asynchronous Sockets; Overlapped I/O and Event Objects; Quality of Service; Shared Sockets; Registration and Name Resolution; Multipoint and Multicast Semantics; Client-Server Model; Windows Sockets Extensions; MFC Support for Windows Sockets; Extensions to MFC Sockets Classes; Service Registration API. NetBIOS Interface: Features and Usage.

Remote Procedure Calls: Microsoft RPC Objectives; Structure of RPC; IDL and ACF Files; Data and Language Features; Array and Pointers; Binding and Handles; Client and Server Pipe Implementation; Installing and Configuring RPC Services.

Remote Access Service: Common Dialog Boxes; Connection Operations; Phone Books; Autodial; Using RAS; Linking to a Remote Access DLL; RAS Security. Microsoft Win32 Internet Functions: FTP, Gopher, HTTP, Cookie.

Windows Networking (WNet): WNet Functions; Connection Dialog Box; Enumerating Network Resources; Adding Network Connection; Retrieving Connection & User Name; Network Error Handling.

Messaging API: Programming MS Exchange; Extended MAPI Programming; MAPI Object Interfaces; Opening, Reading, Composing Messages; Using Address Book.