|
Thanks CPallini,
1.
CPallini wrote: The above cannot happen.
I think you agree with my points that the sequence analysis execute (1) then execute (2).
Which is,
--------------------
My question is when the exception is thrown, and goes to exception handler in catch block, it will do operations in the following sequences,
(1) execute the exception handler code (since there will be recursive function call -- stack will ever increasing);
(2) unwind stack.
--------------------
Runs out of memory because function call will make stack ever-increasing, right?
2.
CPallini wrote: I think we can consider it in a broad sense, i.e. if you remove the throw statement, then no stack overflow happens.
Does your above point related to my 2nd question? What additional memory is consumed by exception handling mechanism?
regards,
George
|
|
|
|
|
George_George wrote: right?
Yes.
George_George wrote: Does your above point related to my 2nd question?
Yes.
George_George wrote: What additional memory is consumed by exception handling mechanism?
Of course it is recursive function calls that make the stack ovewrflowing (and of course you haven't recursive function calls if you drop the throw statement, perhaps Bjarne was just curious to see whether stack overflow happens inside the catch block or not...).
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
[my articles]
|
|
|
|
|
Thanks CPallini,
Let me make my question more clear. In the sample code I posted in my original question, Bjarne is used to show whether function call or exception handling mechanism will run out of memory at first.
It is clear as we have discussed function call will continue to consume stack -- to make memory out of run.
Now I am unclear about what is the memory consumed by exception handling mechanism as Bjarne mentioned, since all I can see the memory consumed is caused by function call (recursive), but not by exception handling mechanism itself.
Any ideas about memory consumed by exception handling mechanism itself?
regards,
George
|
|
|
|
|
dear all
what is difference between struct and union? thanks
Li Zhiyuan
5/10/2006
|
|
|
|
|
The members of a union share the same address.
Maxwell Chen
|
|
|
|
|
I found this nice site[^], where you can find answers to such questions.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Rajesh R Subramanian wrote: I found this nice site[^]
Thank you very mutch man, nice site, never seen it before, how was you able to find out?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
[my articles]
|
|
|
|
|
CPallini wrote: how was you able to find out
Well, he just googled for it... Errr... wait
|
|
|
|
|
CPallini wrote: how was you able to find out?
Got it in one of those forwarded e-mails.
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Hello all
I am developing an application for video encoding.
For that i am using x.264 library to Encode video frames.
It works fine if i compile my project as c code but it gives linking error when i compile it as c++.
And my need is c++, so is there anybody who can help me?
Thanks in advance.
Regards.
Manish Patel.
B.E. - Information Technology.
|
|
|
|
|
manish.patel wrote: x.264 library
Again?!
Maxwell Chen
|
|
|
|
|
I am asking first Time on this forum and why are you saying again?
Manish Patel.
B.E. - Information Technology.
|
|
|
|
|
manish.patel wrote: I am asking first Time on this forum and why are you saying again?
Another people just asked the same question one hour ago (here[^]). So x.264 library is hot today!
Maxwell Chen
|
|
|
|
|
I am am drawing gradient color on CTreeCtrl background and i want to make CTreeCtrl TV_ITEM labels ( text labels 0 trasparent ...
I am getting Image transparent
but not the text labels next to the image ... thats what is the problem
please let me know how to make it
thanks in advance
|
|
|
|
|
This same question was answered yesterday. please read back to get your answer.
Iain.
|
|
|
|
|
Thanks Iain,
That solution will work only when there is background image is need to be painted
I shud not have any background image to me painted
coz i am painting Gradient color in background
now how to make the lables trasparent?
Though
in that solution who is calling CTreeCtrlX::SetBkImage(UINT nIDResource)fuction is not there...
there is no message who will call the function
please help me if u can
first of all i shud not use image coz .. gradient color need to me painted .. gradient i have done but the labels......
whats the solution
or can you please tell me how i can use the code mentioned in the Article
|
|
|
|
|
Have a look at the CXTreeCtrl control, and see the parts where they paint a bitmap. Just replace those with drawing a gradient.
Just because the answer hasn't been given to you 100%, doesn't mean you can't adapt their work.
Iain.
|
|
|
|
|
Really thanx
please let me know who is calling SetBkImage(UINT nIDResource) in that artcl.. do i need to call that Onerasebakgrnd?
or in onPaint()?
please let me know wen shud i call SetBkImage(UINT nIDResource)
|
|
|
|
|
sarat wrote: please let me know who is calling SetBkImage(
I have no idea. Try putting a breakpoint on that function, and then you'll find out.
Iain.
|
|
|
|
|
there is no souce code is available
to debug
if i put the code in my app the function is not calling only
and
SetBkImage() is not a member of CTreeCtrl
to over ride
its mentioned that it is overridable function
|
|
|
|
|
hi
I implimented CustomDraw
when i put lptvcd->clrTextBk = CLR_NONE ;
lables are painted with black color background but not trasparent
please some one tell me what shud i change in the code to get the CtreeCtrl lables trasparent
void CLeftPaneTreeCtrl::OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult)
{
switch(pNMHDR->code)
{
case NM_CUSTOMDRAW:
{
LPNMTVCUSTOMDRAW lptvcd = (LPNMTVCUSTOMDRAW )pNMHDR;
lptvcd->clrTextBk = CLR_NONE ;
lptvcd->clrText = (RGB(0,0,255));
//SetTextColor(RGB(255, 0, 0));
//SetBkMode(lplvcd->nmcd.hdc,TRANSPARENT);
switch (lplvcd->nmcd.dwDrawStage)
{
case CDDS_PREPAINT:
// Need to process this case and set pResult to
// CDRF_NOTIFYITEMDRAW, otherwise parent will never receive
//CDDS_ITEMPREPAINT notification. (GGH)
*pResult = CDRF_NOTIFYITEMDRAW;
return;
}
}
}
}
|
|
|
|
|
in my Tree control OnCustomDraw i have written code like this
void CLeftPaneTreeCtrl::OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult)
{
switch(pNMHDR->code)
{
case NM_CUSTOMDRAW:
{
LPNMTVCUSTOMDRAW lptvcd = (LPNMTVCUSTOMDRAW )pNMHDR;
//lptvcd->clrTextBk = CLR_NONE ;
//lptvcd->clrText = (RGB(0,0,255));
SetTextColor(RGB(255, 0, 0));
SetBkMode(lplvcd->nmcd.hdc,TRANSPARENT);
switch (lplvcd->nmcd.dwDrawStage)
{
case CDDS_PREPAINT:
// Need to process this case and set pResult to
// CDRF_NOTIFYITEMDRAW, otherwise parent will never receive
//CDDS_ITEMPREPAINT notification. (GGH)
*pResult = CDRF_NOTIFYITEMDRAW;
return;
}
}
}
}
in that code
SetTextColor(RGB(255, 0, 0)); works fine
SetBkMode(lplvcd->nmcd.hdc,TRANSPARENT); doesnt work ( it doesnt make TreeCtrl lables trasparent
CLeftPaneTreeCtrl is Derived class of CTreeCtrl
My I am hosting TreeCtrl on CView derived class MyView
and
if i uncomment both the lined comented in the code
lptvcd->clrTextBk = CLR_NONE ; -> doent work it paints Black background instead of transparent color
but any other color for eg lptvcd->clrTextBk = RGB(0,0,225) works fine
lptvcd->clrText = (RGB(0,0,255)); -> works fine
now I am not able to make lables trasparent
but one more thing ... the same method works fine in my CListCtrl with respect to trasparent lables ... ofcouse there r some other probs butfirst i wnana sort out the rpob with tree control transparent labels first
am looking for solution please help me out
|
|
|
|
|
help plzzzzzzzzzzzzz
modified on Friday, February 8, 2008 6:19 AM
|
|
|
|
|
Hi,
I am creating a dialog based application in MFC, and I am having a weird problem with one of the CWnd derived objects on my dialog.
Basically when starting the application, if it starts up such that the mouse pointer is over one particular dialog (which I created...) the hourglass doesn't go away until I move the mouse off that part of the dialog. As soon as I move it off the dialog it goes away. If it starts up such that the mouse over another part of the dialog it goes away just fine.
However, it's kind of annoying (and unprofessional) because that part of the dialog that causes the mouse the hourglass to hang is quite large.
Strange! Is there any way to programatically tell the hour glass to go away?
Thanks - @LRG
|
|
|
|
|
Ok,
Let me answer my own question - I just found that if I put EndWaitCursor() in the OnInitDialog memeber after creating the problem CWnd it works.
Wondering, is this a bit of a kluge?
Thanks - @LRG
|
|
|
|