Click here to Skip to main content
13,353,706 members (60,895 online)
Click here to Skip to main content


105 bookmarked
Posted 8 Dec 2003

A Basic Media Player

, 10 Jan 2013
Using MCIWnd wrapper class to write a simple media player

AppWizard has created this mci application for you.  This application
not only demonstrates the basics of using the Microsoft Foundation classes
but is also a starting point for writing your application.

This file contains a summary of what you will find in each of the files that
make up your mci application.

    This file (the project file) contains information at the project level and
    is used to build a single project or subproject. Other users can share the
    project (.dsp) file, but they should export the makefiles locally.

    This is the main header file for the application.  It includes other
    project specific headers (including Resource.h) and declares the
    CmciApp application class.

    This is the main application source file that contains the application
    class CmciApp.

    This is a listing of all of the Microsoft Windows resources that the
    program uses.  It includes the icons, bitmaps, and cursors that are stored
    in the RES subdirectory.  This file can be directly edited in Microsoft
	Visual C++.

    This file contains information used by ClassWizard to edit existing
    classes or add new classes.  ClassWizard also uses this file to store
    information needed to create and edit message maps and dialog data
    maps and to create prototype member functions.

    This is an icon file, which is used as the application's icon.  This
    icon is included by the main resource file mci.rc.

    This file contains resources that are not edited by Microsoft 
	Visual C++.  You should place all resources not editable by
	the resource editor in this file.

    This is an example .REG file that shows you the kind of registration
    settings the framework will set for you.  You can use this as a .REG
    file to go along with your application.

    This file contains the Object Description Language source code for the
    type library of your application.


AppWizard creates one dialog class and automation proxy class:

mciDlg.h, mciDlg.cpp - the dialog
    These files contain your CmciDlg class.  This class defines
    the behavior of your application's main dialog.  The dialog's
    template is in mci.rc, which can be edited in Microsoft
	Visual C++.

DlgProxy.h, DlgProxy.cpp - the automation object
    These files contain your CmciDlgAutoProxy class.  This class
    is called the "automation proxy" class for your dialog, because it
    takes care of exposing the automation methods and properties that
    automation controllers can use to access your dialog.  These methods
    and properties are not exposed from the dialog class directly, because
    in the case of a modal dialog-based MFC application it is cleaner and
    easier to keep the automation object separate from the user interface.

Other standard files:

StdAfx.h, StdAfx.cpp
    These files are used to build a precompiled header (PCH) file
    named mci.pch and a precompiled types file named StdAfx.obj.

    This is the standard header file, which defines new resource IDs.
    Microsoft Visual C++ reads and updates this file.

Other notes:

AppWizard uses "TODO:" to indicate parts of the source code you
should add to or customize.

If your application uses MFC in a shared DLL, and your application is 
in a language other than the operating system's current language, you
will need to copy the corresponding localized resources MFC42XXX.DLL
from the Microsoft Visual C++ CD-ROM onto the system or system32 directory,
and rename it to be MFCLOC.DLL.  ("XXX" stands for the language abbreviation.
For example, MFC42DEU.DLL contains resources translated to German.)  If you
don't do this, some of the UI elements of your application will remain in the
language of the operating system.


By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.


This article, along with any associated source code and files, is licensed under The GNU General Public License (GPLv3)


About the Author

Mehdi Bonvari
Chief Technology Officer
Iran (Islamic Republic of) Iran (Islamic Republic of)
No Biography provided

You may also be interested in...

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.180111.1 | Last Updated 10 Jan 2013
Article Copyright 2003 by Mehdi Bonvari
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid