|
It gives the offset of a structure member from the beginning of the structure, in bytes.
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
Thanks, but how does it do that?
|
|
|
|
|
#define OFF(type, field) ((LONG)(LONG_PTR)&(((type *)0)->field)) Take the following structure:
struct ThisStruct
{
char field1;
short field2;
int field3;
int field4;
}; If we call the macro as such: OFF(ThisStruct, field3)
Firstly, the macro creates a pointer to a ThisStruct structure at address 0: ((ThisStruct *)0)
Next, it refers to a particular field inside that structure: ((ThisStruct *)0)->field3
Next, it takes the address of that field: &(((ThisStruct *)0)->field3)
Since field3 is 3 bytes from the beginning of the structure, and the structure is at address 0, the pointer will hold the value 3.
Lastly, the macro converts the pointer to a LONG_PTR and finally to a LONG , to give an integer result - the offset of the field from the beginning of the structure.
Hope this helps,
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
How can I change it???
I have looked into MFC and found ASSERTMSG, but this macro isn't defined when I build, and if I include it's header in which it is defined bh.h??? I get a million error messages
Any ideas?
Thanks
How do I print my voice mail?
|
|
|
|
|
I am trying to add some error handling to my project and I want to exit if either the configuration file from the command line doesn't exist or the configuration file has parsing errors. I have tried the code below using Visual Studio 2003 (MFC Dialog based application). The application does not exit. What is the correct way to force a shutdown of my MFC Dialog based application?
<code>
if( InitDOM( XMLFileName ))
{
if( !ParseDOM() )
{
CString msg;
msg.Format("Invalid node fetched.\n%s\n", (LPCSTR)pXMLDom->parseError->Getreason());
AfxMessageBox( msg );
PostQuitMessage(0);
}
else
{
ProcessPanels();
}
}
else
{
AfxMessageBox( " config file did not exist" );
PostQuitMessage(0);
}
</code>
|
|
|
|
|
Try EndDialog()
Anyone who thinks he has a better idea of what's good for people than people do is a swine.
- P.J. O'Rourke
|
|
|
|
|
I tryed this and it does not exit cleanly. I will look into it some more tomorrow as it is quite late at the moment.
|
|
|
|
|
smesser wrote:
I tryed this and it does not exit cleanly.
How so? This is how modal dialogs end. Modeless dialogs use a different approach.
"The pointy end goes in the other man." - Antonio Banderas (Zorro, 1998)
|
|
|
|
|
I have not had a chance to look into it but I have a cleanup function and there are some calls to Killtimer that are crashing. What happens when you call Killtimer on a timer that was never set to begin with?
|
|
|
|
|
smesser wrote:
What happens when you call Killtimer on a timer that was never set to begin with?
Then KillTimer() should not be called. Use the return value of SetTimer() to know if the timer exists or not.
"The pointy end goes in the other man." - Antonio Banderas (Zorro, 1998)
|
|
|
|
|
|
I will have need to do this in a modeless dialog as well. What is the technique for that?
|
|
|
|
|
Modeless dialogs do not use DoModal() or EndDialog() . See MSDN for examples.
"The pointy end goes in the other man." - Antonio Banderas (Zorro, 1998)
|
|
|
|
|
try OnClose();
TOXCCT >>> GEII power
|
|
|
|
|
Hello, everyone!
I am looking for source code of Web search engine. I just want basic functions of a Web search engine, just key word search is enough. Rank, classification and other advanced functions are not need. I want the search engine to work in this way, download web pages from specified web sites to local machine, then the search engine can retrieve information from local machine.
Where can I find related source codes?
Best regards,
George
|
|
|
|
|
|
Thanks, d2hes buddy!
I have searched "sourceforge.net" by key word "Web Search Engine" but failed to find any useful information. What better key word should I use?
Best regards,
George
|
|
|
|
|
depends how automated you want it...
It's pretty easy to download files from a remote source and it's just as easy to open a file and look for keywords using regex...so no one has probably bothered to build such a thing...beside it's kind of a makes no sense under most circumstances type project...
Anyways, look at building your own...there is a function whose name escpaes me right now that is availble with IE 4+ or something like that, which make downloading files a snap...then just look into boost::regex++ for extarcting keywords and such...
Wouldn't be to hard...
Cheers
How do I print my voice mail?
|
|
|
|
|
Thanks, Hockey buddy!
The method you mentioned is an effective one. Can you tell me where can I find source codes which can download the whole content of a Web site. I think to make a reference to some source codes written by experienced people will contribute a lot when making a new one by myself in the future.
Best regards,
George
|
|
|
|
|
I'm looking for a way to change some of the default configuration settings that are generated for c++ projects in .Net 2003. (i.e. I want Level 4 warnings, I want my output sent to a /bin folder, etc.)
I could have sworn I came across material at one time stating that there was a master template file (.xml file maybe?) for this, but I haven't been able to find anything.
Any ideas?
Thanks for any help.
"You will be killed by a poisoned fortune cookie." - Old fortune cookie proverb
|
|
|
|
|
I have found what I'm looking for.
Thanks self.
"You will be killed by a poisoned fortune cookie." - Old fortune cookie proverb
|
|
|
|
|
Can anyone please help me!!
i am looking for some simple C++ code to validate isbn numbers. i have no clue where to start
THANK-YOU!!
James
|
|
|
|
|
|
|
i want to modify the window caption,i know to use
AfxGetMainWnd ( ) —> SetWindowText (_T("Application title") )
but when i write it in BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
but when i doesnt run note warning box
|
|
|
|