+ Reply to Thread
Results 1 to 3 of 3

Thread: Adding MSCOMM control to Visual C++ Application

  1. #1
    Newbie ifitzgerald is an unknown quantity at this point
    Join Date
    Sep 2007
    Posts
    3

    Adding MSCOMM control to Visual C++ Application

    Hi,

    I am modifying a rather large and complex MFC application (written by someone else) written in Visual C++ 6.0 with service pack 6. I need to add serial communication functionality to the program, and since I am very familiar with the Microsoft Comm Control from Visual Basic I decided that I would use that in this application.

    To make things easier on myself, I decided to make several test applications using the MS Comm control in VC++ prior to modifying the large program. My test applications have been successful in communicating over the serial port.

    However, as soon as I attempt to add the MS Comm Control to the form of the larger, more complex application it fails to run. It compiles successfully with no errors or warnings, but when I run it it exits immediately. I've tried stepping through it, but the only way I can manage to catch anything is if I set a breakpoint on the constructor of the main form. It doesn't even get far enough to call OnInitDialog!

    As soon as I remove the MS Comm Control from the form and comment out any references to it in code the program once again runs. I'm really at wit's end here. I would greatly appreciate any help.

    The reason I haven't included any code in this post is because I'm not sure what would be helpful - as far as the MSComm control goes, the only code that references it in the complex application was automatically generated, such as adding a member variable to the form's class, including the CMSComm.h file, etc. If you'd like to see anything in particular let me know.

    Thanks,
    Ian

  2. #2
    Newbie ifitzgerald is an unknown quantity at this point
    Join Date
    Sep 2007
    Posts
    3

    I had an epiphany!

    I just had an epiphany!

    Whenever I created a VC++ MFC application, I always made sure that "ActiveX Controls" support was checked. I just created an application without the ActiveX support included to see what would happen if I tried to include the MSComm control anyway. Sure enough, it compiles with no errors or warnings, but it exits immediately when I try to run it!

    So now I have the question, what does checking the include "ActiveX Controls" support actually do? Does it just add directives or includes that I can add after the fact? How can I include support for ActiveX controls in an application that previously did not include that support?

    Thanks,
    Ian

  3. #3
    Newbie ifitzgerald is an unknown quantity at this point
    Join Date
    Sep 2007
    Posts
    3

    Solution

    I found the solution to my problem:

    Checking the "ActiveX Controls" support checkbox does a few things:
    1) Adds #include <afxdisp.h> to StdAfx.h
    2) Adds a call to AfxEnableControlContainer(); in the application's InitInstance function.

    Once I added those two things to my larger, more complex application it ran fine.

    Ian

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Similar Threads

  1. Visual Studio 2005 and Windows Vista
    By Jordan in forum General Programming
    Replies: 14
    Last Post: 01-10-2009, 03:39 PM
  2. Visual Studio 2005 Pro Won't Install
    By CheeseBurgerMan in forum Software Development Tools
    Replies: 10
    Last Post: 09-22-2006, 06:44 PM
  3. Visual Studio 2005 Express Edition
    By Crane in forum Software Development Tools
    Replies: 9
    Last Post: 05-25-2006, 07:17 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts