|
HWND_BROADCAST broadcasts messages to toplevel windows only, where are you trying to handle the message?
MFC doesn't route non command messages, so if you have a MFC app you will have to catch it in the frame window and not in the doc/view/app etc, then manually route it to the doc/view/app if you wan't to process the message there.
|
|
|
|
|
Thanks. I'll give that a try.
|
|
|
|
|
Is there a reason why the maximum buffer size for a TCHAR seems to be 121 WideChars (for me at least)? Is there a way to increase this size?
Cheers.
|
|
|
|
|
How are you allocating your buffer?
Michael
But you know when the truth is told,
That you can get what you want or you can just get old,
Your're going to kick off before you even get halfway through.
When will you realise... Vienna waits for you? - "The Stranger," Billy Joel
|
|
|
|
|
I'm declaring this:
_TCHAR temp[4000];
and then using it in a call to this:
int len2 = (int)strlen((char*)testLine)+1;
MultiByteToWideChar(
CP_UTF8,
0,
(char*)testLine,
len2,
(_TCHAR*)temp,
4000);
I've also tried to concat TCHAR onto TCHAR using pointers, but again it stops working when it reaches a size of 121 WideChars.
Thanks for your time,
Tom.
|
|
|
|
|
Does testLine have any /0 characters in it?
How is testLine defined is it a char[]?
I assume your app is being complied as _UNICODE?
Michael
But you know when the truth is told,
That you can get what you want or you can just get old,
Your're going to kick off before you even get halfway through.
When will you realise... Vienna waits for you? - "The Stranger," Billy Joel
|
|
|
|
|
Does testLine have any /0 characters in it?
No (unfortunately).
How is testLine defined is it a char[]?
char testLine[2000];
I assume your app is being complied as _UNICODE?
It is indeed.....
Cheers,
Tom.
|
|
|
|
|
If you've defined _UNICODE why don't you just use TCHAR's instead of mixing TCHAR's with char's and use the generic text mapping routines (_tcslen() instead of strlen()). If the _UNICODE identifier is found _tcslen() will resolve to wcslen() otherwise it's strlen(). Instead of using MultiByteToWideChar try using mbstowcs() it's simpler.
|
|
|
|
|
Originally I did just that, using all TCHAR's. Unfortunately, it again hit the buffer size of 121 and stopped concatonating.
It concats the whole lot in char's no problem, so I changed to this tactic and then tried to convert - same problem.
|
|
|
|
|
Hi!
Could I show an alternative message when I move the mouse over a button in my Visual C++ application (in a little floating yellow window)? How could I do it?
Thank you in advance
I have no idea
|
|
|
|
|
Interesting.
Try deriving a class from CButton and handle the mouse move message. If it is within the button control's rectangle, then show the message.
Kuphryn
|
|
|
|
|
Do you know how could I show a message in this way? I don't have idea about this.
Thank you!
|
|
|
|
|
|
Thank you, I didn't know its name
|
|
|
|
|
i have cyrillic strings as string constrwints in reesource.
i load it as:
CString str.LoadString(IDS_STRING1);
and the result is {"I?IAA?AE A?OEEOEE"}
any ideas?
were rgrtgrtvrtrt rtrtb brt tyuhjghj hbhbnh hnjm 1234567?
|
|
|
|
|
hummm hummm, what does that mean ?? :p
well, i think you've probably forgotten to specify you were using UNICODE, however, the unexpexcted "I?IAA?AE A?OEEOEE" appears.
am i false?
have a look at TCHAR definition & use...
TOXCCT alias Nicolas C.
|
|
|
|
|
You need to work in a computer with Cyrillic support, for example in Hebrew, or Arabic language.....
Use string type TCHAR
Then Use ::LoadString(HINSTANCE, UINT, LPTSTR, int).....
Best Regards
Carlos Antollini
Do you know piFive[^] ?
|
|
|
|
|
use Unicode (define _UNICODE macro and proper entry point for executable). See MSDN for detailed description
|
|
|
|
|
I am searching for a good way to inform an object which paints into a CView window if the user tries to close the view.
It's very important for me that my paint object first stops its painting and then do an deinitialization before the view can be closed. So I must catch the close event, send an information to the paint object and then send the close message again to the view.
Any good ideas?
Thanks in advance.
|
|
|
|
|
Try adding a handler for OnDestroy() to your view. Call your deinit routine, and then call the base class CView::OnDestroy().
onwards and upwards...
|
|
|
|
|
Hi gurus,
All resides in this simple question:
How to get rights accesses of a shared folder programmatically?
I tried the NetShare* API but the permission value of the PSHARE_INFO_502 structure is not supported on WinXP/2003 (it is said in the doc of the structure). MSDN says to use Authorization API.
Can anyone show me how to retrieve this information? I tried AccessCheck, but it seems complex to initialize.
From a network shared folder, I simply want to check if I can read or write on this shared folder.
Please help!
Thanks!
|
|
|
|
|
Hi everybody,
Has anyone ever suceeded in drawing a Circle in C++; in the Shell Command with characters like '*' ? I tried a few combinations but the best alternative I have developed a Circle in form of a pentagon, but is it possible to draw a 360 degree Circle in the Shell Command ?
best regards
Tolga
|
|
|
|
|
Its the resolution that is your problem, drawing a perfect circle with carrots or periods would be difficult unless you could make it big enough. For an example of what I'm talking about, go into paint and make a circle, then zoom into it, and you'll see how the pixels are arranged to create the illusion of the circle to the human eye.
Hope it helps.
~Tony
|
|
|
|
|
Hi all,
I am a beginner into Visual C++ programming.
I have recently developed an application in Microsoft Visual Studio 6.0 on Windows XP Professional. This application uses MFC42.DLL, MSCOMCT2.DLL and MSVCRT.DLL as shared DLLs. I created a media disk using InstallShield for Microsoft Visual C++ 6.0. On installing the application on Windows NT, the Windows NT machine crashed giving the Blue Screen of Death.
My first question, could my application have caused this crash or was it just a coincidence. The cause of the crash is not known yet.
My second question, in order for this application to run properly on any older Windows platforms, viz. Windows NT, Windows 95 or Windows 98, what must I do?
Any inputs, suggestions or any links giving more information about this problem will be highly appreciated.
Best Regards,
abhijo...
|
|
|
|
|
All you need to do is to set the appropiate defines before including the windows headers files (either windows.h etc for sdk or afx....h for MFC), you will usually find these includes in stdafx.h. Set them according to this table:
Windows 95 and Windows NT 4.0 WINVER=0x0400
Windows 98 and Windows NT 4.0 _WIN32_WINDOWS=0x0410 and WINVER=0x0400
Windows NT 4.0 _WIN32_WINNT=0x0400 and WINVER=0x0400
Windows 98 _WIN32_WINDOWS=0x0410
Windows 2000 _WIN32_WINNT=0x0500 and WINVER=0x0500
Windows Me _WIN32_WINDOWS=0x0490
XP _WIN32_WINNT=0x0501 and WINVER=0x0501
Internet Explorer 3.0, 3.01, 3.02 _WIN32_IE=0x0300
Internet Explorer 4.0 _WIN32_IE=0x0400
Internet Explorer 4.01 _WIN32_IE=0x0401
Internet Explorer 5.0, 5.0a, 5.0b _WIN32_IE=0x0500
Internet Explorer 5.01, 5.5 _WIN32_IE=0x0501
So say if you wanted to run on all platforms, set WINVER=0x0400 and optionally _WIN32_IE=0x0300 for IE.
Out of intrest, is it your app that crashed on NT or was it installsheld? I would try manually copying your app to the NT box and running it - if it is using features not available in that OS, you should get messages up like "the produre entry point blah blah was not found in blah blah.dll)
|
|
|
|