Send letters to [email protected]. Letters may be edited for style and length.
A few months back, there was some discussion in the Readers Forum regarding the purpose of certain keyboard keys such as Scroll Lock. I just stumbled across Knowledge Base article Q244139 that documents a new use that Microsoft has invented for Scroll Lock. Apparently Windows 2000 implements a new feature that, once enabled via a registry setting, allows you to crash your system on purpose using the Scroll Lock key. They must have added that for compatibility with Windows 9x.
Chris Branch
[email protected]
Regarding the letter from Jim Johnson in your most recent issue, Ive been using ATL and WTL for front-end development for a year now. At my company, we use it to drive the front-end UI pieces of our distributed platform components. Of particular value are the basic MFC classes for GDI and String manipulation (based on STL). We use the WTL Wizard from inside C++ to start off.
Its a real treasure for creating lightweight components. (You simply cant download MFC to users and expect dialup people to put up with it.)
Jerome
Im not sure if this qualifies as a programming tool. In my job, I routinely have to run a processing program on very large (multi-gigabyte) files. Occasionally there are problems in the file where I need to look at a specific record.
I have been unable to find an editing tool that will allow me to open such a large file and move to a specific line number, or even search. They all seem to run out of memory just trying to open the file.
I am absolutely sure that more than one editor vendor can offer you snappy response on multi-gigabyte files. They can drop me a note at [email protected], and I will give them all a mention.
Lately Ive been getting interested in SOAP. We have a six-year old network-based product with Windows or Mac clients and a Unix or Linux server. The protocol is binary, inflexible, and proprietary. We want to replace it with something text-based, flexible, and open. SOAP looks like a perfect solution.
What I want is a program that takes a C++ header file and generates the code to export its functions via SOAP. I want it to handle all the networking and XML: when my program calls a function on a remote object, the generated code should translate that function call into a SOAP message, translate the SOAP message back into a function call on the target machine, and then send a SOAP reply back with the out parameters and function return value.
Oh, and can it be open source to boot?
There are Java and Perl tools that do this, but I think C++ is missing them because it doesnt have reflection. Microsoft has a beta tool, but I havent investigated it yet. Im a little apprehensive about trusting it. Im sure you understand.
Until that fine day, I guess Ill have to roll my own with an XML parser in one hand and a Winsock book in the other.
Mark Foley
[email protected]
My guess is that someone either has such a tool, or is working furiously on it. Send mail to [email protected] if youre that person! rlb
Dear Ron,
Im writing in regard to your question on page 72 in the February issue of WDJ
1. You really dont know, that under Windows (all types), the print screen key makes a hard copy of your monitor to the clipboard? I use it every day to make my program documentation.
2 . I am working under Win32, with Borland C++ and sometimes with C++ Builder. In my surroundings, I know to work with C++ Builder, but not with Visual C! About every two years, I take a look at Visual C and return to my Borland. (I have been using it since TC 1.0). It works well for me, the shell is better, and I hate MFC and like OWL and VCL. (OWL is more flexible for my demands.)
Best wishes,
Fazekas Sándor [email protected]
In response to the letter from Rob Anderson in the March issue of WDJ, where he states that the VC 7 Beta Documentation indicates that Microsoft has only fixed 3 of 14 recognized incompatibilities with the ISO/ANSI C++ Standard, I wish to point out that this is a flaw in the beta documentation rather than the compiler.
I have been actively checking the Microsoft newsgroups for .NET (news://microsoft.public.dotnet.languages.vc and news://microsoft.public.dotnet.languages.vc.libraries), and Microsoft has addressed quite a few more deficiencies.
VC 7 Beta supports
- covariant return types
- correct for-loop variable scoping
- wchar_t as an actual type
(For legacy support, for scoping and wchar_t are controlled independently of Microsoft extensions with new command-line options; /Zc:forScope and /Zc:wchar_t).
Also, Ron Laermans of Microsoft posted this notation: WARNING: Only leftmost base covariant returns work in Beta 1. Full support will be in Beta 2., so dont write in letters on this until after Beta 2.
Additionally, the libraries are being modified to compile with options set for greater compliance (although Windows-specific headers will still require Microsoft extensions).
Microsoft has been much more forthcoming about what will and will not make it into VC (although, or course, they cant answer every question yet). Partial template is not going to make it into VC 7. It is listed to be fixed, but not this release (although some code using partial template specialization can apparently be made to work).
Koenig lookup appears not to be fixed, although I cant recall any specific response on the status from Microsoft; I suspect it hasnt been scheduled.
While ANSI/ISO compliance is obviously not the A-number-one priority at Microsoft, the situation is considerably better than Robs letter indicates.
Also note: Microsoft representatives stated that no work is being done at this time to add compliance with the newer C99 Standard.
I do not speak for Microsoft; draw your own conclusions.
Ron Ruble
[email protected]
Ron,
I am responding to your question Anyone out there using C++ Builder? in Readers Forum in the February edition of WDJ.
Yes I am, having been a Borland fan from the days of Turbo C v2.0. I resisted buying C++ Builder for a long time, shocked by the unexpected shift to Pascal when Delphi came out. I knew that C++ Builder was built on Delphi and could not disguise its Pascal underpinnings. Unfortunately, my trusty compiler of choice for many years, Borland C++ v5.02, was starting to show its age in various ways. I had to update, and the only viable choice for me was C++ Builder, which was at version 5 when I bought it last year.
I am pleased to report one important discovery about C++ Builder that I made only last week and that makes the transition from Borland C++ not so bad after all. That is, it is possible to build a traditional Win32 GUI application using C++ source files, resource files, and Microsoft libraries the sort of applications that feature in WDJ. The reason why this is not obvious is that the IDE is set up for Rapid Application Development along the lines of Visual Basic. To build a traditional Win32 GUI application, one must select Console Wizard from File / New menu option. The Console Wizard is just a small dialog box with few selections, one of which is a check box marked Console Application. Just uncheck the box and away you go. I had foolishly made the mistake of thinking that the Console Wizard was exclusively for Console-style applications!
On a different note, this is the first time I have corresponded, even though I have been a regular reader from the days the publication was called Windows/DOS Developers Journal. The first publication I bought was the June 1992 edition. I checked out who the editor was back then. Well how about that! It was Ron Burk. You wrote in From the Editor some programming myths that you thought should be debunked to avoid programmers wasting time. Some helpful advice then and still trying to keep programmers productive today. Thanks for the consistent good work.
Regards
Andrew Bowley
[email protected]
Have I really been doing this magazine an entire decade? Thats too long for anybody to be doing the same thing! rlb
I really enjoyed the January 2001 WDJ User Interface Programming article about comboboxes with user-set height and the flat style. It almost solved a problem for us. The problem is that it only works for drop-down comboboxes and not drop-down list comboboxes.
The first problem with drop-down list combo boxes is that they have no edit control. Therefore, the code that refers to the edit control does not work. This was easy to work around.
The second problem is that the drop-down list comboboxes paint directly to the control (again splashing themselves all over the parent DC) when the selection or focus changes. Therefore, my plan to modify your paint-handling code will not work, because not all drawing is done from that handler.
Do you have any suggestions for doing the same thing your January 2001 column did, but for drop-down list comboboxes? Of course, we can always drop back and write a combobox from scratch, and that is what it is looking like we will do.
Thanks.
Quinton Tormanen
[email protected]
Glad you liked the article. To handle drop-down list comboboxes, it seems to me that one would have to take over the painting completely and also intercept all the messages that cause painting. Its a project Id like to tackle, but it will be a while before I get around to it. In other words, if you need this within the next few months, youre better off implementing something yourself, whether its a brand- new control or some combobox subclassing.
If you do, you should consider writing an article about it yourself theres no magic involved. See www.wdj.com/author/ for the gory details.
Thanks for the feedback, ph