Vous êtes sur la page 1sur 5

www.objectinnovations.

com 877-558-7246 (toll free)


info@objectinnovations.com 781-466-8012

146. Advanced Windows Programming


Using Visual C++
Search Rev. 2.0

This course teaches advanced programming techniques using the Win32 API
Course Catalog and MFC. It is intended for experienced MFC developers who wish to better
Curriculum Guides understand the fundamental architecture of Windows NT/2000 and Windows
.NET 95/98 and to utilize advanced programming techniques to create industrial
Java/J2EE strength applications.
XML
Downloads Module 1 begins with an overview of the Win32 architecture and the Win32
Buy Courseware API. There is a discussion of the fundamentals of SDK Windows programming
Customization and MFC programming without the wizards. It then covers advanced MFC and
News Win32 programming topics including multi-threaded programming, DLLs, and
Authors interprocess communication. The fundamentals of COM are introduced,
Technical Library including the use of Visual C++ compiler support to create COM client
FAQ programs.
About Object Innovations
Opportunities Module 2 covers database programming topics for C++ programmers. ODBC
Contact Us is covered, including a sample program showing ODBC programming at the
Home API level. The MFC CDatabase, CRecordset and CRecordView classes are
discussed in detail. There is coverage of parameterized queries and joins.
Microsoft’s Universal Data Access architecture is introduced, including a
discussion of OLE DB. ActiveX Data Objects (ADO) programming in C++ is
covered. An appendix covers programming with DAO.

Module 3 is devoted to various advanced aspects of MFC programming,


pertaining primarily to the user interface. There is extended treatment of the
Win32 common controls, including the tree view control and image lists.
Advanced features of document/view are covered, including multiple
document types, multiple views, and multiple panes. Advanced menu
techniques are covered. Dynamic toolbars and dialog bars are discussed.
Advanced features of GDI are covered, including bitmaps, metafiles and
printing. Use of the Windows system registry is covered.

Extensive programming examples and exercises are provided using Visual


C++ 6.0. Besides doing standalone exercises, during the course the student
will develop several cumulative Windows applications. Self-extracting files are
provided containing all the examples and laboratory exercises in the course.

LEARNING OBJECTIVES
• Gain a firm foundation in Win32 architecture, including DLLs, processes
and theads
• Learn interprocess communication techniques based on the Win32 API
• Learn the fundamentals of COM required for use of modern Win32
features
• Learn how to implement database programs using the MFC database
classes and ADO
• Acquire advanced user interface techniques that are used in professional
applications

Course Duration: 5 days.

Prerequisites: A basic knowledge of Windows programming using MFC and


the Visual C++ development environment

Module 1. Win32 Windows Programming Using


MFC
1. Win32 Architecture and Programming
Windows Operating Systems
Dynamic Link Libraries
Win32 API
Kernel Objects
Win32 Memory Management

2. Win32 Programming
Win32 Program Flow
SDK Windows Programs
Console Programs
Windows Versions
Error Information
MFC Without the Wizards

3. Dynamic Link Libraries


Dynamic vs. Static Libraries
DLLs to Manage Resources
Explicit and Implicit Linking
Linking to C Language DLLs from C++ Programs
MFC Regular and Extension DLLs

4. Introduction to Threads Using MFC


Win32 Processes and Threads
MFC Thread Encapsulation
User Interface and Worker Threads
MFC Thread Synchronization
Thread Safety

5. Processes in Win32
Creating and Terminating Processes
Process Data Structures
Process Kernel Objects
Synchronization

6. Interprocess Data Communication


Interprocess Communciation in Win32
Memory-Mapped Files
WM_COPYDATA
Mailslots
Named Pipes

7. COM Fundamentals
Interfaces
Classes and Objects
Globally Unique Identifiers
Servers
Registration
Instantiating an Object
Object Lifetime and Interface Negotiation
Initializing COM
COM Client Programming Model

Appendix A. Visual C++ COM Support


Using Type Libraries with Import Directive
Namespaces
Smart Pointers
Error Handling
_bstr_t

Module 2. Database Programming Fundamentals


Using Visual C++
1. Form Views and Data Entry
CFormView Class
Converting a Dialog to a Form View
Creating a Form View with AppWizard and ClassWizard
Control Variables in Dialog Data Exchange
Data Entry User Interface Paradigm

2. Introduction to ODBC
ODBC Architecture
Connecting to a Data Source
Executing SQL Statements
Retrieving Result Data

3. MFC Database Classes


CDatabase and CRecordset Classes
Record Field Exchange
Scrolling in a Recordset
Recordset Status
Choosing a Data Source at Runtime
MFC Specification of SELECT Statement
Edits, Adds and Deletes
CRecordView Class

4. More About ODBC


Using ODBC at the API Level
Parameterized Queries
Joins

5. ActiveX Data Objects


Universal Data Access
ODBC and OLE DB
ADO Object Model
Database Programming Using ADO

Appendix A. Data Access Objects


Microsoft Jet Database Engine
DAO Object Model
Creating Databases Using DAO
MFC DAO Classes

Module 3. Advanced User Interface Programming


Using MFC
1. Windows Common Controls
Win32 Common Controls
MFC Common Control Classes
Progress, Slider and Animation Controls
Bitmaps and Image Lists
Tree View Control
List View Controls

2. Windows System Registry


System Registry
Win32 Registry API
Saving User Preferences in Registry

3. Advanced Document/View Architecture


Document Templates
Multiple Document Classes
Multiple View Classes
Splitter Windows and Multiple Panes

4. Advanced Menus and Toolbars


Dynamic Menus
Context Menus
Dynamic Toolbars
Dialog Bars

5. Advanced GDI
Coordinate Transformations
Scrolling
Printing
Metafiles
Bitmaps
System Requirements
Software:

• NT 4.0 or Windows 2000


• Visual C++ 6

Hardware:

• Pentium 500MHz or equivalent CPU


• 128 Meg of RAM
• At least 500 megabytes of free disk space
• CDROM drive or networked to a server with a CDROM drive

Copyright © 2004 • Object Innovations, Inc.

Vous aimerez peut-être aussi