CS410 : Visual Programming

Course Overview

Course Synopsis

Win32 programming is a special area in which you will develop programs for MS windows. This course will discuss Intel (X86) based Windows platform. We will be using C language as programming tool as it is the top choice for Application Programmers Interface ( API) programmers and also because the most part of Windows OS is developed in C language; furthermore the documentation available for API by Microsoft also contains C-oriented syntax. We will explore main features of Windows Programming like resource sharing, device independence programming, using GDI etc.

Course Learning Outcomes

At the end of the course, you should be able to:

  • Describe and explain the functional mechanisms of Windows platform i.e. how it works and the concepts related to basic Windows architecture
  • Use/manipulate Windows resources for your application
  • Develop fine-tuned and robust applications for MS Windows
  • Get hands in specialized and more complex areas of windows programming like network programming, graphics programming etc.

Course Calendar

Pointers and Arrays3Handouts13-17
User-defined or Custom Data Types4Handouts18-25
Assignment # 1 (Non-Graded)
Bitwise Operators6Handouts34-44
Calling convention7Handouts45-58
Brief History of Win328Handouts59-68
Quiz #1
Processes in Windows9Handouts69-90
Architecture of a standard Win32 API Application10Handouts91-107
Windows Styles11Handouts108-121
Assignment # 2 (Graded)
System Window Classes12Handouts122-135
Quiz # 2
WM_PAINT message14Handouts161-180
Mid Term Exam
Input Devices16Handouts191-212
Assignment # 3 (Non-Graded)
String and Menu Resources18Handouts227-236
Menu and Dialogs19Handouts237-252
Using Dialogs And Windows Controls21Handouts280-305
Quiz # 3
Using Common Dialogs And Windows Controls22Handouts306-311
Common Controls23Handouts312-325
Dynamic Link Libraries24Handouts326-338
Graded Moderated Discussion Board
Thread and DLL's25Handouts339-346
Assignment # 4 (Graded)
Threads and Synchronization26Handouts347-368
Network Programming Part-I27Handouts369-375
Quiz # 4
Network Programming Part-II28Handouts376-392
Network Programming Part-III29Handouts393-399
Network Programming Part-IV30Handouts400-412
Final Term Exam
Back to Top