winzip icon

A Very Simple COM Server and Client in MS VC++ 6.0 without using MFC,ATL or IDL.

Submitted on: 1/1/2015 5:59:00 PM
By: Albert Gomez (from psc cd)  
Level: Intermediate
User Rating: By 10 Users
Compatibility: Microsoft Visual C++
Views: 7017
     A Very Simple COM Server and Client in MSVC++ 6.0 without using MFC,ATL or IDL. This very simple com server is something I had been looking for to help me understand the insides of the "black box" that is COM as presented in MFC and ATL. As a developer learning COM, I was unable to find an extremely simple, clear implementation of COM without having to also deal with ATL, MFC or the IDL (not that they are difficult to understand, but just additional overhead). I hope this will be useful to others who want to understand some of the insides not usually seen when using the AppWizards. The Server is implemented as an empty win32 simple dll project with no original files or text created by Visual Studio, other than the Stdafx.h and Stdafx.cpp files. The client was created as an empty simple win32 console application, including no generated code from Visual Studio. The Globally Unique Identifiers were created using Guidgen.exe included with Visual Studio. After downloading the code, unzip and open the file Pig.dsw in MS Visual C++. Both Pig and Pig Client should open. Compile Pig first, then register the dll using regsvr32.exe. (inside the directory containing Pig.dll, run regsvr32 using the command "regsvr32 Pig.dll"). After successful registration, compile and run PigClient. You should get a messagebox indicating the server was accessed successfully. Albert
winzip iconDownload code

Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. Afterdownloading it, you will need a program like Winzip to decompress it.Virus note:All files are scanned once-a-day by Planet Source Code for viruses, but new viruses come out every day, so no prevention program can catch 100% of them. For your own safety, please:
  1. Re-scan downloaded files using your personal virus checker before using it.
  2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.

If you don't have a virus scanner, you can get one at many places on the net

Report Bad Submission
Use this form to tell us if this entry should be deleted (i.e contains no code, is a virus, etc.).
This submission should be removed because:

Your Vote

What do you think of this code (in the Intermediate category)?
(The code with your highest vote will win this month's coding contest!)
Excellent  Good  Average  Below Average  Poor (See voting log ...)

Other User Comments

11/5/2016 2:07:34 AMlw

thank you very much! how to add event handler ?
(If this comment was disrespectful, please report it.)


Add Your Feedback
Your feedback will be posted below and an email sent to the author. Please remember that the author was kind enough to share this with you, so any criticisms must be stated politely, or they will be deleted. (For feedback not related to this particular code, please click here instead.)

To post feedback, first please login.