|
Have you tried deleting the Relase folder and trying a rebuild all?
Michael
|
|
|
|
|
Thanks
I did that but no joy.
It appears that my system is hooped. Another system compiled the project no problem so ----- FORMAT C:
|
|
|
|
|
Dear All
How to get LOGFONT from COleControl?
Please Help Me...
Best Regards,
======================
www.activePower.idv.tw
+886-932-306-142
Jason Liao
======================
|
|
|
|
|
Hi,,
my question is where to store my data. but i like to explain what my application does first.
I have a MDI application, it displays Bitmaps, then it detects a certain number of points on the displays image. the user can move the points, add point, and delete points.
i store all the points in a linked_list,, in CView
so basically i dead with CView alot..
but now i have to add serialization to my application.. so i could store and retrieve my work.
1- Should i add all the data in the CDoc class, or i can leave them in CView.
2- can i use serialization in CView.
Thanks
Ehsan Behboudi
|
|
|
|
|
i am displaying a cedit control, made using pnt->Create( WS_VISIBLE, r, this, ID_EDIT1), where r is a rect. this displays fine but then i cant click back onto the form and make it lose focus... why? im not doing modal or anything...
thanks in advance
|
|
|
|
|
In the Style put this.
WS_CHILD | WS_VISIBLE | WS_TABSTOP
Works fine?
Cheers!!!!
Carlos Antollini.
|
|
|
|
|
thanks for the idea, but no luck.... it loses focus when i click on a menu item but not on the document behind it - its part of the view class... any ideas?!
thanks
|
|
|
|
|
I'm working on an architecture that will require a DLL to host a singleton object that will be accessible by multiple applications. It's clear that I can store the pointer to the singleton in a shared data segment, so that it will be used by all instances of the DLL... but the pointer will point to a dynamically allocated object, which itself will contain pointers to other dynamically allocated objects.
Now as I understand it, these DA'd objects will be mapped into the address space of the app that first loade the DLL, correct? This means they won't be accessible to other applications, correct? If my logic is correct.. how can I share these objects between instances?
Color me puzzled.
|
|
|
|
|
You are correct they will be in their private address space.
However you could pass messages with object index in them.
Each process would have its own objects and you'd gain access to them
via the object index/id which you would use as a hashtable key/array index/
whatever.
You could also try something with a memory mapped file. All processes could
map the same file and try for the same load address. Then write your objects
in there. Yuck. Or worse, they don't load at the same address, so them you
are down to offsets from the memory mapped file address. Double yuck.
Can't think of anything for now...
Stephen Kellett
--
C++/Java/Win NT/Unix variants
Memory leaks/corruptions/performance/system problems. UK based.
Problems with RSI/WRULD? Contact me for advice.
|
|
|
|
|
I don't have too much experience with them, but couldn't you use an Atom if it's a string value that you're trying to store? Do Atoms work for non-string items?
Jamie Nordmeyer
Portland, Oregon, USA
|
|
|
|
|
Is an NT service an option? If so, this is a good way to do what you asked.
If not (and MFC is an option), look at the CMemFile class. There are samples on MSDN.
If MFC and CMemFile are not an option you can still use API functions to create memory mapped files. Check out this link to the MSDN library:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/hh/winbase/dll_9khl.asp
If none of these options will work for you, you can create a second EXE which will host a named pipe or other inter-process communication layer (TCPIP listner) which can be launched to distribute the data. (This is probably overkill, though.)
Thanks
Matt Gullett
|
|
|
|
|
I have extensive experience with shared memory and, to the best of my knowledge, what you are attempting is not possible. What you could do though is separate the data from the methods and declare structures that you place in a memory mapped file. You could then create objects that map to invidual instances of the data structures. I have done similar things and, while it isn't exactly clean, it is workable and not overly complex. Unfortunately, character strings must be either of fixed length or allocated from a 'pool' of characters. If the data structures are highly dynamic then the fixed length option is probably better.
Best of luck.
|
|
|
|
|
Hello, today I've done my first DLL...
----------------------------------------
Environment:
VC++6 SP4.
MFC DLL.
The DLL must be called from a service.
----------------------------------------
I have placed on it the code that worked for me in another program.
I have exported the function (there is only one function in the DLL) using __declspec (dllexport) in the ".h" file, after doing so I have modified the DEF file and I've placed on it the name of the function a whitespace and @1.
(I don't know why the compiler knows wich is the function owner of that name, but this is only a little thing...)
After doing so I've compiled && linked the DLL, the service exe and the dll are in their respective RELEASE modes.
if in the dll function that starts the keyboard hook I write down a AfxGetApp()->m_hInstance, it crashes, if I write there a NULL, it doesn't make anything and if I write there a GetModuleHandle("aaa.DLL") it don't make anything too.
the code is correct (I think, at least it worked outside the DLL) and I know that I call the f(x) in the DLL because of some messageboxes placed in the DLL f(x).
I don't know why the keyboard hook is not working.
I need a Wide system keyboard hook...
As always thank you very much for your time and help.
if anybody wants to see the code or something else I can send it, I've not done it now because it would be a large download for everybody.
|
|
|
|
|
I'd like to have my MFC app run a separate console app and have its output redirected to an edit box inside of it -- sort of how Visual C++ works when you tell it to run a tool and it sends the output to the Output window.
How is that done?
Thanks,
Alvaro
|
|
|
|
|
Use hStdInput/hStdOutput/hStdError members of the strSTARTUPINFO structure. Don't forget about adding STARTF_USESTDHANDLES to dwFlags.
Tomasz Sowinski -- http://www.shooltz.com.pl
|
|
|
|
|
I have a window1. On some event, I create a message box using AfxMessageBox(). When the user enters ENTER or ESC in the latter one, it closes and the key is sent to the window1. As I need to handle these keys inside window1 for some other purposes, I would like to know if there is any way to prevent this sending.
Thank you in advance,
Andrei
|
|
|
|
|
I'm not sure if I've understood this right. Do you want to handle the returned result from the message box in window1 (the IDOK, IDCANCEL)? Or do you want the actual key press returned to the window. (VK_ESC, VK_ENTER)
The IDOK cancel is handled like below
int nResult = AfxMessageBox("My question here", MB_OK | MB_CANCEL");
if(nResult == IDOK)
{
// okay clicked
}
else
{
// cancel pressed
}
|
|
|
|
|
Sorry, it was my mistake. Now, I guess, question is more clear.
Actually, I need to prevent this sending a message to window1.
Now program operates like this:
1. some event;
2. message box;
3. user presses ESC or ENTER;
4. window1 operates like this key was pressed in it.
5. user gets not what he expected to see.
Andrei the Adroit
|
|
|
|
|
Thank you for reply.
I guess, my question was not so clear. Actually, I would like to have following results. I have ESC and ENTER keys handled in window1 for some purposes (say, events to draw something or not). When I call MessageBox the user answers it with a keyboard. The MB is closed AND the ESC or ENTER are then sent to my window1. As a result, user makes some changes in window1 even if he didn't want them. That's why I would like to prevent this sending.
|
|
|
|
|
Has anyone figured out how to properly and completely handle changing the app's displayed language on changes to the user's keyboard input locale? This message is supposed to be sent to notify the app, BUT I am not always getting it (only when you click on the taskbar keyboard input locale icon, not when you use the keyboard shortcut to do it). AND I only seem to get it when I set a breakpoint on the message handler.(!) AND when I DON'T get it, the app AND the keyboard input locale selector AND the debugger all lock up. Seems to have something to do with the way you pass the message on, via DefWindowProc(). I have tried a few different ways with no success.
I am using NT 4.0, SP6. (Is THIS the source of the problem? I have heard it may be...)
TIA!
|
|
|
|
|
Yes, it *is* bad form to reply to one's own post, sorry! This was not a setup for self-glorification.
The message IS coming thru in all cases, just that for the keyboard shortcut, the message gets sent to the MDICLIENT, not the frame. This code in the frame does the trick, it apparently just needs to be handled in the MDICLIENT as well:
(header)
afx_msg LRESULT OnInputLangChangeRequest( WPARAM wParam, LPARAM lParam );
(message map)
ON_MESSAGE( WM_INPUTLANGCHANGEREQUEST, OnInputLangChangeRequest )
(implementation)
LRESULT MainFrame::OnInputLangChangeRequest(
WPARAM wParam,
LPARAM lParam
) {
TRACE( _T("Input language change request, Lang = %X, Sublang = %X\n"), HIWORD( lParam ), LOWORD( lParam ) );
// You must call this for the request to get passed on.
// "When the DefWindowProc function receives the WM_INPUTLANGCHANGEREQUEST
// message, it activates the new input locale and notifies the application
// of the change by sending the WM_INPUTLANGCHANGE message."
LRESULT lResult = DefWindowProc( WM_INPUTLANGCHANGEREQUEST, wParam, lParam );
// Extract the language from the message and select the locale.
LCID lcidNew = MAKELCID( lParam, SORT_DEFAULT );
::SetThreadLocale( lcidNew );
// **Reload display**
return lResult;
}
|
|
|
|
|
Also handle the message in the MDI child frame as needed. Oh brother!
|
|
|
|
|
Ok this is it! You won't get another post on this outta me in THIS LIFETIME! :>
Here is where you need to trap WM_INPUTLANGCHANGEREQUEST in MFC MDI apps:
1) your CWnd-derived class used to subclass MDIClient
2) your CView-derived class(es)
Over and out!
|
|
|
|
|
I would like to create an automation which could use excel. I need excel to catch values for functions which are implemented with vc++.
I believe that I could use GetValue function like that: range.GetValue which return a VARIANT. It's at this step I have a problem, because, for example if my function need of a double parameter, and this parameter is given by the value catched on excel. How my function could recognize it?
thank for your help
gerald;P
|
|
|
|
|
I would like to create an automation which could use excel. I need excel to catch values for functions which are implemented with vc++.
I believe that I could use GetValue function like that: range.GetValue which return a VARIANT. It's at this step I have a problem, because, for example if my function need of a double parameter, and this parameter is given by the value catched on excel. How my function could recognize it?
thank for your help
|
|
|
|