|
If you would be happy with the new help format (*.CHM), then as Roger Allen said you can "simply" create
a HPJ file describing all the html / pic files you want to crunch together using the help compiler that
came with VC++.
If you really want the old style help (*.HLP) then I would recommeng going via rich text format. This
is well documented (though don't ask me, I used Word 2.0 to save as RTF!) and may be easier for you to
generate. You would still need to generate a contents file etc, so the CHM route should be easier.
I presume you aren't making a help file from each individual html file...
Good luck,
Iain.
|
|
|
|
|
How can I make my MFC (statically linked) exe file occupy less space in disk? The minimum I've gotten is 2 Mb, but I've seen exe file (statically linked MFC) around 200 Kb.
Any ideas?
Thanks a lot.
|
|
|
|
|
Are you building your exe in Release or Debug? Release will be much smaller than Debug mode...
|
|
|
|
|
Will it still be statically linked?
How do I change it to release mode?
Thanks!
|
|
|
|
|
Done! Thanks!
Geez! It wasn't that hard. Sorry fro asking such a newbie question.
Thanks a lot!
|
|
|
|
|
i see you are here for long with many questions, but u don't know release, unbelievable !!!
includeh10
|
|
|
|
|
Yeah! I'm self made in VC++, so I know many things while I don't know some basic stuff. Sorry.
|
|
|
|
|
no sorry for unknown.
u will be very successful soon.
includeh10
|
|
|
|
|
Thanks a lot!
It's great to have the support of such wonderful people!
|
|
|
|
|
You should register and become part of the family! (unless you already are of course )
would love it!
- Nitron
"Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb
|
|
|
|
|
|
I have two breakpoints in two functions. I run to the first one, then to the second one. When it reaches the second brekapoint, if i scroll up the debug output window I see "first chance exception" . What is this and how do I handle it? How do I find out what is causing it? It doesnt crash....goes from bkpoint A to bkpint B, but spits out this exception note in the debug window...
Appreciate your help,
ns
|
|
|
|
|
When you're at your first breakpoint, go to Debug/Exceptions. Scroll down to the last exception, select it, and click on "Stop always", then OK. This tells the debugger to break when the app throws a C++ exception (which is what a first chance exception is). Continue on to the next breakpoint and the debugger should stop as soon as the exception occurs.
You can also do this for other types of exception, such as Access Violations and Stack Overflows.
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|
|
I did what you said, and though it stopped in diassembly (or is it assembly? , I looked at the call stack and figured out the problem. It was soooo instructive. I thank you!!!
Appreciate your help,
ns
|
|
|
|
|
Thanks for your appreciation.
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|
|
How do I use "bit masking" to set individual bits in a word?
i.e. if I have:
0x00F0 = 0000 0000 1111 0000
and I want:
0000 0010 1111 0000 = 0x02F0
-
|- set only bit 9
What is the trick?
Thanx!
- Nitron
"Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb
|
|
|
|
|
One possiblility:
WORD w = 0x00F0 | 0x0200;
Thus all you want to keep is set to 0, the rest gets an 1.
If you want to clear bits instead of setting them, use the & operator instead of the | and set everything to 0 you want to get cleared.
|
|
|
|
|
To set particular sets of bits of data, you need to OR it to the target. So, in your example to set bit 9 = 0x200, you need to OR this with 0xF0:
0x200 OR 0xF0 = 0x2F0 .
have a look at the excellent article:
http://www.codeproject.com/cpp/bitbashing.asp[^]
for more info.
|
|
|
|
|
RChin wrote:
have a look at the excellent article:
http://www.codeproject.com/cpp/bitbashing.asp[^]
Ahh yes... just what the doctor ordered!
- Nitron
"Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb
|
|
|
|
|
Nitron wrote:
just what the doctor ordered!
A Doctor ordered you to learn about bit masking
Regards,
Brian Dela
Run naked in the snow until you're sweating like a stuck pig and can't seem to catch your breath. When the flu becomes pneumonia, they can cure that with a shot. - Roger Wright
|
|
|
|
|
Brian Delahunty wrote:
A Doctor ordered you to learn about bit masking
um... Are you telling me your's hasn't?!?!
- Nitron
"Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb
|
|
|
|
|
The usual way is to do a bitwise "OR" of just the bit you want to set, which is 0x0200:
short result = 0x00F0 | 0x0200;
Notice that in this case "or"ing the values is equivalent to adding them together:
Binary Hex Dec
---------------------------------------
0000 0000 1111 0000 0x00F0 240
+ 0000 0010 0000 0000 0x0200 512
= 0000 0010 1111 0000 0x02F0 752
Then to check if the bit is set, you do a bitwise "AND":
bool bitIsSet = (result & 0x0200) != 0;
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|
|
thanks all! I figured it must be easy to do...
I don't get to deal with it all that often, and I usually find myself doing it by hand!
- Nitron
"Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb
|
|
|
|
|
Hi
Quick question - am I comparing like for like if I do the following in a CEdit derived class? I am trying to determine whether or not the text will be completely visible when placed in the edit control. This code indicates that the text will not be completely visible, even though it quite clearly is!
void CMyEdit::DoSomething(const CString & strText)<br />
{<br />
CRect rectText;<br />
GetClientRect(rectText);<br />
<br />
CDC * pDC = GetDC();<br />
<br />
CSize sizeExtent = pDC->GetTextExtent(strText);<br />
<br />
if (sizeExtent.cx > rectText.Width())
{<br />
}<br />
<br />
ReleaseDC(pDC);<br />
}
Thanks in advance!
|
|
|
|
|
I just did a quick lookup on the GetTextExtent function and noticed that there's another one called GetOutputTextExtent, which may be the one you need.
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|