Solved

OWL/DLL/COM printing problem

Posted on 1999-01-27
8
189 Views
Last Modified: 2013-12-26
I have developed an ActiveX, COM based DLL as a component to medical billing systems.  The component includes interface functions which get and send back information and functions which display dialogs for information and selection.  Everything works fine except printing.  In some of the dialogs I allow the user to choose 'Print' to print certain list box information.  However, when I choose Print the "Print Setup" dialog appears and works with no problem.  The TPrintout seems to be built with no problems.  But, when the DLL actually attempts to print the dialog closes down and I am brought directly back to the calling program.

Some Facts:
1. Using Borland C++ 5.2
2. I am able to print from the EXE program.
3. I am positive TPrintout is not the problem since I have tried simplifying it to just 1 or two lines of text but get the same print problem.

Thanks for any help,
Greg Marston, Unicor Medical
0
Comment
Question by:gmarston
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 15

Expert Comment

by:Tommy Hui
ID: 1299861
Is this 16bit or 32bit?

0
 

Author Comment

by:gmarston
ID: 1299862
32bit.
0
 

Expert Comment

by:kralubo
ID: 1299863
Did you load in your DLL the (Print) Windows Common Controls (in your exe they may be linked automatically)?
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 

Author Comment

by:gmarston
ID: 1299864
I'm guessing you mean the file owl/printer.h?  If so, the answer is no and I'm feeling pretty stupid. I'll try this out asap and let you know. Thanks
0
 

Author Comment

by:gmarston
ID: 1299865
Ignore the previous comment from me.  I'm not sure if I loaded the Print common controls in the DLL.  How do I determine this?
0
 
LVL 1

Expert Comment

by:kjetilr
ID: 1299866
Did you remember to include the printer.rc file? This is a bit important in OWL.
0
 

Author Comment

by:gmarston
ID: 1299867
Here's a snippet of the relevant code.  The fact that
"Printer->Setup(this)" works should mean the window's print controls are all there for owl.  Correct?


TPrinter *Printer;

Printer = new TPrinter;


....called from a dialog (from DLL) when user selects print:

  if (Printer) {
    DListPrintout po((char *)m_lbdata[m_current].notes1.c_str(),
          m_listbox, Printer);
    // TPrintout derived class, same class works,
    // with EXE but not in DLL.

    message((char *)po.GetTitle());
    // this works fine, po is okay

    Printer->Setup(this);
    // a test to see if Printer is brings up
    // dialog and correct default
    // printer (should mean everything okay)

    Printer->Print(this, po, TRUE);
    // 1. brings up Print dialog to select
    //    different printer.
    // 2. SetPrintParams is called because
    //    message is displayed
    // 3. nothing prints and component dialog
    //    closes, returns to calling .exe

Thanks for any help,
Greg
0
 
LVL 14

Accepted Solution

by:
AlexVirochovsky earned 100 total points
ID: 1299868
I don't see any reason for this, but for expeance, can be
that Print notpPrinted (in BC 4.x,5.x)! In this case i make
roundabout way: simply print with help pure Windows
functions: OpenPrint,OpenDoc,...(see Windows Doc).
0

Featured Post

WordPress Tutorial 1: Installation & Setup

WordPress is a very popular option for running your web site and can be used to get your content online quickly for the world to see. This guide will walk you through installing the WordPress server software and the initial setup process.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It's sometimes a bit tricky to use date functions in Oracle BPEL. I'll explain quickly how you can add N days to the current date. In a BPEL process this can be useful, and you can adapt it to fit your needs. First of all, let's see how to add 1 …
Originally, this post was published on Monitis Blog, you can check it here . In business circles, we sometimes hear that today is the “age of the customer.” And so it is. Thanks to the enormous advances over the past few years in consumer techno…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…
Suggested Courses

615 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question