Solved

Printing with RichEdit V2

Posted on 2000-05-17
8
373 Views
Last Modified: 2013-12-03
I'm printing multi page documents using EM_FORMATRANGE and the first time through the loop the return value is too low and after that the return value is only incremented by two bytes and it prints nothing on page 2, 3, 4, ......

It's prints ok if I use RichEdit V1.

I'm using win98, NT 4.0, MASM.

Is there something wrong with RICHED20.DLL for printing?

Thanks


 
0
Comment
Question by:Eyooper
  • 4
  • 4
8 Comments
 
LVL 23

Expert Comment

by:chensu
ID: 2818845
HOWTO: Use Built-In Printing Features from a Rich Edit Control
http://support.microsoft.com/support/kb/articles/Q129/8/60.asp
0
 

Author Comment

by:Eyooper
ID: 2819105
Been there, done that already.

Do you think I also need to use EM_DISPLAYBAND for V2, it should be optional.
 
Thanks
0
 
LVL 23

Expert Comment

by:chensu
ID: 2819195
You don't have to use the EM_DISPLAYBAND message if you use a nonzero value for the wParam parameter in the EM_FORMATRANGE message.
0
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:Eyooper
ID: 2819232
Thats what I thought. Why does my print routine work ok using RichEdit V1? RICHED32.DLL

Thanks
0
 

Author Comment

by:Eyooper
ID: 2819980
I sort of fixed the problem I was using WM_GETTEXTLENGTH to get the number of bytes to print which is the same as the file size. But the number of bytes in the edit control equals file size minus the number of lines, evidently it does not enclude either the CR or LF.

So if I do a EM_EXSETSEL with cpMin set to 0 and cpMax set to -1 and then do a EM_EXGETSEL and use the cpMax value to determin the number of bytes to print it prints ok.

I ran the same text with RichEdit V1 doing a EM_EXSETSEL, EM_EXGETSEL and the cpMax returned a value two bytes greater then the file size and WM_GETTEXTLENGTH.

If you can explain to me whats going on, you can have the points and close the question.

Thanks

0
 
LVL 23

Expert Comment

by:chensu
ID: 2820040
Try it with only one character to see what those numbers are. Then, you can probably figure out what is going on.
0
 

Author Comment

by:Eyooper
ID: 2820806
RichEdit V2 does not display the LF in it's control.

you can close the question.

Thanks
0
 
LVL 23

Accepted Solution

by:
chensu earned 50 total points
ID: 2822622
You may accept my comment as an answer or you may delete the question.

Thank you.
0

Featured Post

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

If you have ever found yourself doing a repetitive action with the mouse and keyboard, and if you have even a little programming experience, there is a good chance that you can use a text editor to whip together a sort of macro to automate the proce…
Entering time in Microsoft Access can be difficult. An input mask often bothers users more than helping them and won't catch all typing errors. This article shows how to create a textbox for 24-hour time input with full validation politely catching …
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

856 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