|
Is this an MFC application? How are you disabling the menu items? From where, and how, are you launching the dialog box?
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Show me a community that obeys the Ten Commandments and I'll show you a less crowded prison system." - Anonymous
|
|
|
|
|
Yes this is a MFC application which works similar to the CProperty sheet wizard style but with CDialogs.
I am disabling the menu items in the frame class when the first dialog appears at start of the application but somewhere in between when other dialogs come up the appearance of the disabled menu items is changing from disabled to enabled.
|
|
|
|
|
To enable/disable menu items it is best practice to use the ON_UPDATE_COMMAND_UI message.
It also best practice to use a SDI (with a CFormView) application if menus are needed.
Watched code never compiles.
|
|
|
|
|
|
Hi,
It sounds to me as if your doing something that is screwing up the MFC command routing. However based on your brief description I have no ideas as to what it could be. Did you check to see if the menu items have a unique resource ID?
Best Wishes,
-David Delaune
|
|
|
|
|
|
|
Hi,
I see that you showed your EnableMenuItem() function on stackoverflow. If you would have gave us a better description and shown that function here on codeproject you would have recieved a much better response.
Best Wishes,
-David Delaune
|
|
|
|
|
Sorry for the confusion, let me explain. The StackOverflow post was not me, it was a reference. I could not post my code online... Company policy. However, thanks for your concern in trying to help me solve my problem. I shall continue to approach you guys in future.
|
|
|
|
|
I am doing a project in college in which i have to extract a bit or a group of bits from a Ethernet frame in C PROGRAMMING. Can someone please provide an example in writing the code? Thank you.
Pavan
|
|
|
|
|
prathapkumar334 wrote: I am doing a project in college... What class?
What does the frame look like? What code have you put together so far?
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Show me a community that obeys the Ten Commandments and I'll show you a less crowded prison system." - Anonymous
|
|
|
|
|
prathapkumar334 wrote: I am doing a project
This means you are expected to do it, people here will not write your code for you. However, if you have specific technical questions people will try to help you.
Unrequited desire is character building. OriginalGriff
I'm sitting here giving you a standing ovation - Len Goodman
|
|
|
|
|
Extracting bits from a group of bytes it is the daily delight of the C programmer. However without knowing what your data structure (that is the frame) and what are the bits you're interested in, we can't help a lot.
Veni, vidi, vici.
|
|
|
|
|
What a pathetic request.
Have you thought of looking on line at the ethernet protocol, and the various other protocols that could be caried by it?
So is it Ethernet IP? Then what? TCP? UDP? RTP....
See, you havent even started yet. Grow a pair and go out find the info yourself. After that its a simple case of writing a few structs and casting the data packet to access whats inside...
==============================
Nothing to say.
|
|
|
|
|
Erudite_Eric wrote: What a pathetic request.
let me refer you to this : HOW-TO-ANSWER-A-QUESTION[^]
Watched code never compiles.
|
|
|
|
|
Sorry, a quick slap acorss the face can do wonders for peoples attitude.
==============================
Nothing to say.
|
|
|
|
|
Here's a bit of a hint...
0. Define a structure that is representative of the data that you're expecting.
1. Take data from your socket.
2. Cast your data bytes onto your data structure.
3. Interpret and use data however you need to.
4. Do it all over again for any number of packets transferred.
|
|
|
|
|
You might want to have a look at this link.
http://simplestcodings.blogspot.in/2010/10/create-your-own-packet-sniffer-in-c.html
Moreover there are a few open source libraries (pcap libraries). I would suggest you to use open source libraries for capturing packets. For your project do something which has not been done before. Packet capturing has been done earlier. In Windows you have the WireShark Tool which does it.
--Edwin.
|
|
|
|
|
You might want to have a look at the following open source libraries.
Separating bits from the ethernet is already done by many. So open source libraries are available.
I came across a good looking solution though. The links is given below.
http://www.binarytides.com/blog/packet-sniffer-code-in-c-using-linux-sockets-bsd/
Thanks,
Edwin.
|
|
|
|
|
|
I have installed a PCI digital card which provides an interrupt every 20 msec.
Now I would like to be able to call procedures within my MFC aplication from this routine.
Are they any way I can call - exampe
CTest1::Timer1()
from
DigitalInt(); I am not an expert on Namespace, but I think thats the problem.
Andy.
|
|
|
|
|
The best way to pass information from interrupt handlers to your application is to use user defined messages. This requires that you pass the handle of a window to the interrupt handler (usually the main window, but may be also a view or dialog window) and the handler then uses PostMessage(hWnd, WM_MY_APP_EVENT, wParam, lParam) . The receiving window requires a handler for the WM_MY_APP_EVENT message: ON_MESSAGE(WM_MY_APP_EVENT, OnMyAppEvent) . WM_MY_APP_EVENT is a place holder for a definition like #define WM_MY_APP_EVENT WM_APP+0 .
When not using your main window, you should use WM_USER as base rather than WM_APP .
|
|
|
|
|
OK Jochen, thanks for the info.
I remember using EVENTS a few years ago (this is similar?), but if you have a link or example that would be great as very out of date hear.
Searching through old code to see what I did in the past regarding events.
Andy
|
|
|
|
|
No, it has not to do with other events. I just choosed the word because it matches when using an interrupt routine. I can't give you a working example, because I don't know about your current implementation and requirements. But I can try to give you short implementation list:
- Decide where to handle the messages (main frame or other window).
- Pass the handle of the window to your interrupt service class using the
m_hWnd member of your CWnd derived class. The service class should contain a member var for the handle. - Add the message definition to a header file (project header file or those of the window class).
- Add the user message handler to your window class.
- Call
PostMessage from your interrupt handler.
|
|
|
|
|
Wauw! It's been a long, long, LONG time since I've written an interrupt handler. Perhaps 15 years or more - back when I started windows from the command prompt, since I didn't have win95 yet.
I'm light-years away from being any kind of expert on the matter, however, the very fact that you want to call a software routine in response to a hardware event screams DEVICE DRIVER to me.
In fact, one of the very reasons I avoided coding windows programs for quite a while was the fact that it was considerably more difficult to write code that would interact with hardware directly.
My guess is that you'll have to download & use the windows DDK.
I'll be waiting and watching this thread closely, in the hope that I'm wrong.
|
|
|
|