Sorry Zac, I meant to reply to the original author.
VS6 is broken in some ways; I just think that trying to make things work on it is kind of silly when you have a far superior alternative available for free. And the gnu compiler chain is quite nice, but the 3.x series is far superior to VS6 in terms of the probabilty of standard-conforming code compiling and working.
And the gnu compiler chain is quite nice, but the 3.x series is far superior to VS6 in terms of the probabilty of standard-conforming code compiling and working.
Agreed. But sadly, there are many companies that still do all their development in VS6.
If the OP hasn't already done so, he might want to download the fixed STL from Dinkumware's site (they are the ones that wrote the version that ships with VS). There were several bugs that were fixed, not sure if this might be one of them.
If you decide to become a software engineer, you are signing up to have a 1/2" piece of silicon tell you exactly how stupid you really are for 8 hours a day, 5 days a week
Unfortunately, I have to stick to VS6. It's really bad that the behavior might come from bugs in the STL Can I simply replace the problematic STL classes? If so, can you provide the Link to the Dinkumware's site?
Thank you for you discussion. That brought some light into the dark. I already started thinking that I'm getting to old for understanding C++ Therefore I like your slogan, Zac!
There is simply quite a bit of valid code that the VS6 compiler is unable to compile. This in turn limits the quality of the STL that can be provided for it. At the end of the day, it's an 8 year old compiler that was written before the C++ standard was finalized IIRC.
In my project i have to initially display the data from database and also i have to provide the facility to the user to change the value. I have done it in onitdialog message handler where the recordset operations have already handled.
i compiled it successfully but while running i got the assertion saying that
if(dcPrint.StartDoc(&doc > 0)
x = GetDeviceCaps(...); //x,y Cooridinates for Printer.
y = GetDeviceCaps(...);
dc.print(xloc,yloc,"Text"); //----> I have doubt here.
//---> How to Set the Margin for the Page Here.
And here's an extension to the above post
The high-order word specifies the notification code if the message is from a control. If the message is from an accelerator, this value is 1. If the message is from a menu, this value is zero.
The low-order word specifies the identifier of the menu item, control, or accelerator.
Handle to the control sending the message if the message is from a control. Otherwise, this parameter is NULL.
Somethings seem HARD to do, until we know how to do them. _AnShUmAn_
Did you saw MSDN.
From the MSDN
"This message is sent when the user selects a command item from a menu, when a control sends a message to its parent window, or when an accelerator keystroke is translated."
its not problem do you konw why?i think he is lucky because he and you and programers are here and
he find his answer when he has a question he write his question here
whatever this question is clear or not clear but when i start to learn VC i dont have any resource
(teacher or website or anything) except MSDN
"Viens,laissons l'Avenir; laissons nos chagrins fous
Jouissons du present fugitif et si doux!"(Khayyam)
actually, it's always easy to ask valuable people who know the answer to your question. but hey, the minimum he can do he search a bit by itself, googling, searching the msdn... and only then, ask the forum. people sometimes seems so lazy