?
Solved

Printing with RichEdit V2

Posted on 2000-05-17
8
Medium Priority
?
377 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
[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
  • 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
Prepare for your VMware VCP6-DCV exam.

Josh Coen and Jason Langer have prepared the latest edition of VCP study guide. Both authors have been working in the IT field for more than a decade, and both hold VMware certifications. This 163-page guide covers all 10 of the exam blueprint sections.

 

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 150 total points
ID: 2822622
You may accept my comment as an answer or you may delete the question.

Thank you.
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

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

As more and more people are shifting to the latest .Net frameworks, the windows presentation framework is gaining importance by the day. Many people are now turning to WPF controls to provide a rich user experience. I have been using WPF controls fo…
Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
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…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…

762 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