|
Use strtok, which is much easier to use and more flexible.
--Mike--
"There are only a limited number of jobs where they will ask to see the sausage. Most of them are in movies."
-- Christian Graus, 2/11/2002
My really out-of-date homepage
Sonork - 100.10414 AcidHelm
Big fan of Alyson Hannigan.
|
|
|
|
|
Hey guys
You know u use meset to set a memory location to a specific value is it better to initalise the memory area to 0 or to NULL.
Peter
|
|
|
|
|
From the point of view of semantic correcteness, you should use 0. In practice, it won't make any difference (appart from some warning from the compiler). I'd say it is best to use 0.
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
|
|
|
|
|
In debug builds, it is extremely useful to set the memory to some clearly identifiable pattern. Depending on the target architecture, it is best to pick some value which will help catch accidental execution of uninitialized memory. Microsoft's x86 debug environment tends to set memory blocks to 0xcdcdcdcd because it resolves to a series of int 0x3h instructions (debug break on x86)
In a release build however, best practice is to set the value to 0 as Joaquín stated above.
Victoria
|
|
|
|
|
With cero..
Regards....
Carlos Antollini.
Sonork ID 100.10529 cantollini
|
|
|
|
|
How can I catch a doubleclick from a CEdit control?
|
|
|
|
|
Subclass from Cedit (to say CMyEdit ) and add a handler for WM_LBUTTONDBLCLK in CMyEdit .
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
|
|
|
|
|
create new class,derive it from CEdit and ovverriden WM_LBUTTONDBLCLK
Mazy
Don't Marry a Person You Can Live With...
Marry Someone You Can Not Live Without
|
|
|
|
|
I use VC 4 and want to upgrade.
But: shall I upgrade to VC 6.0 or to .NET ?
What are the differences ?
Can I import projects developed with VC 4 ?
What kind of code will .NET generate ?
Is it as smart as the VC 4 - code ?
Ralf
|
|
|
|
|
I think you meen VC++7;)
You can install visual studio.Net,then you have both VC++7 and .Net platform
They are not the same things,in VC++7 you'll use MFC7 and new version of ATL
and also managed C++(.Net)
MFC7 and .net are seprate things
Mazy
Don't Marry a Person You Can Live With...
Marry Someone You Can Not Live Without
|
|
|
|
|
Oh, I thought VC++ .net follows VC++ 6.0 because I have never heart of VC++ 7.0.
What is the difference between VC++7 and managed C++ (.NET) ?
Is there any compatibility ?
Can I import project from VC++4 to managed C++ (.NET) ?
|
|
|
|
|
In VC7 you can use both manageg and unmanaged C++,and also you can import your project from VC4 to VC7 ,VC7 has really perfect compiler,you can use CString in both ATL and MFC,also there are some more advantagous in VC7 too.
You see,VC7 is perfect;)
|
|
|
|
|
"First-chance exception in ess2.exe (KERNEL32.DLL): 0xC0000005: Access Violation."
I see this message in the debug box of VC6 each time I fly, with the mouse, the buttons of the standard toolbar of a single document/view architecture.
My app only contains the files generated by the wizzard.
What does it mean and where does this message come from???
elisabeth.sever@europlacer.fr
|
|
|
|
|
You might want to consult this thread about first-time exceptions that took place some weeks ago.
In your particular case, I'd say these exceptions are caused by lacking of appropriate command handlers, but this is just a guess.
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
|
|
|
|
|
Joaquín's thread makes some good points, but _sometimes_ it can be informative to at least try to see whats causing the exception (especially if you find yourself in a situation where all these fce's are clouding up your output window).
With your app running in debug select Exceptions from the debug menu. Highlight Access Violation, select 'Stop Always' and Change.
Now, go to your app and move the mouse over a toolbar icon. You should now get drop into the debugger when the exception is detected by the debugger.
If you find yourself looking at assembly, you may still be able to glean some info from the call stack window (Alt+7) though sometimes not. This can be especially annoying on a system with no System DLL Symbol files installed, or 98 which doesn't ship them. (I bet you're running on 98, if a standard App wiz app is doing this - 98 has some grotty comctl32 aspects).
Anyway, application code that traps exceptions might do so far away from the code that actually caused the fault, and this First Chance vectoring by the debugger might sometimes be the only way to pinpoint the actual location of the problem. It also alerts you to the fact that some DLL or whatever caused and trapped an exception - which, as Joaquín points out, may be no big concern.
Try placing a call to IsBadReadPtr(0, 100) in your views OnDraw method to see what I mean. This fn pushes an exception handler onto the stack then trys to read the memory - if an access violation occurs (as it will with an addr of 0), the int 5 trap handler in the debugger gets it first (hence 'first chance') before its handled in kernel32, so you should see lots of these lines output. The option you checked above allows you to drop right into the code of IsBadReadPtr (at least on NT) when this trap occurs.
|
|
|
|
|
Oh, and by the way, if this is win98 the next time you see these exceptions try a release build to see if it crashes when you mouse over a toolbar button. If it does, its not your fault - probably explorer will crash in the same way till you reboot.
After rebooting, invoke explorer first and leave it running before you start VC. Might make a difference. There's a page somewhere that explains this - you might search for comctl32.dll and win98.
|
|
|
|
|
Hi,
When the user click on another control and the ´combobox has the focus and the list box is currently opened, the combobox won't loose the focus.Is there any way for the other control to get the focus when the user clicks on it eventhough the listbox of the combobox is opened.
|
|
|
|
|
use 'SetFocus()' function
Mazy
Don't Marry a Person You Can Live With...
Marry Someone You Can Not Live Without
|
|
|
|
|
Hi,
I'm trying to create a transparent dialog only, when I try to set the WS_EX_LAYERED style I get a compiler error. I installed the August 2001 SDK but that made no difference. Where is WS_EX_LAYERED defined so that I can include it?
|
|
|
|
|
Try inserting
#define WINVER 0x500
#define _WIN32_WINNT 0x0500 before the inclusion of the Windows headers.
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
|
|
|
|
|
Thanks for the tip, it worked. I'd just tried putting those defines in the preprocessor directives. I understand now that these defines tell the compiler to use the SDK headers instead of the standard ones.
I have realised that I cannot achieve what I needed anyhow. For a start the transparent window that I wanted is a to be a child window. The SDK documentation says that's not possible.
Also, my app is an MDI and in the views I am rendering with OpenGL. It seems I'm getting flickering where the dialog and GL windows appear to compete when painting. Perhaps I'm doing something wrong...
Thanks again.
Matthew
|
|
|
|
|
To avoid flickering, you should be doing your stuff in OnEraseBkgnd (and not calling CDialog::OnEraseBkgnd from the overriden handler). Are you already doing that?
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
|
|
|
|
|
I tried to do that, but didn't see the handler listed in the class wizard. I'm starting to realise that this doesn't the handler isn't there to overridden.
Thanks
matthew
|
|
|
|
|
That pesky message filter again... Please open the MFC wizard, go to the Class Info tab and select the option "Window" in the Message fitler combobox. Now the message WM_ERASEBKGND should be appearing in the list of overrideable messages.
I wonder why the NS guys decided to put such a thing. It takes ages till one first discovers it (usually on a "nervous breakdown" mood), and moreover it's four tabs away from the list that it modifies!
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
|
|
|
|
|
Hello
As the documentation state, printf function print to stdout. The problem is: in my windows application, I open a normal window, and now I ask:
where is in this situation stdin?????
Could I use printf function to write on a window user area?? Is any trick to acomplish this task?.
Thanks
|
|
|
|