|
Cool!
Thank you very much!
Rickard Andersson@Suza Computing
C# and C++ programmer from SWEDEN!
UIN: 50302279
E-Mail: nikado@pc.nu
Speciality: I love C#, ASP.NET and C++!
|
|
|
|
|
I didn't want to discourage you, in my response to your other messages I was simply explaining my experiences in this field.
It is definetly possible to get a job without a degree, I did. My first programming job only paid 10 dollars an hour, but as I gained a background to my career my salary quickly increased. Also if you can prove your self to an employer once you get your foot in the door, anything can happen. There are a lot of good people out there that recognize talent and like to hold onto it, however there are a lot of idiots that dont know what talent is, so watchout for them.
Also its great how well that you did in your college course, I would suggest that you keep taking them if you can. There is a lot more to learn than just the languages.
Write the next big shareware app yourself from home. The kid who wrote Winamp was only 19 and was able to sell it to AOL for a massive profit.
Build a man a fire, and he will be warm for a day Light a man on fire, and he will be warm for the rest of his life!
|
|
|
|
|
Ladies and Gentlemen,
Is there any way to debug signals and threads under Windows, using VC ( 7, in my case ), which actually works..?
- The VC debugger displays a list of the active threads. Great...
- The VC debugger doesn't tell me which signals, mutex'es or semaphores a thread is waiting for, ( or even if the thread is blocking ).
- Spy++ tells me a little more, but still no news about which signal/mutex/sem is being waited for. ( How many context switches a thread does isn't really that usefull... )
- Signals/mutexes/semaphores are global under windows. I know they are ring0 objects, but why can't I see them, peek them and poke them ?
( It's no wonder perhaps, that most of Microsoft's apps are hopelessly single-threaded... )
Sorry for the rant, btw, I'm just frustrated at having to write tons of debugging code which someone else should have provided aeons ago...
Help ? Anyone ?
-=jarl=-
|
|
|
|
|
check out sysinternals.com we (Microsoft programmers ) usually use tools from there.
PS>
On that note could you point me to development environment that provides at least as much information as VS?
|
|
|
|
|
ah......hello there!
Ok, I'll check out sysinternals...
No, can't do. Nope. Nada. No-one does it right...( however, if I was evil overlord.... )
Well, actually, I used to work for a company which had their own "os" which supported multithreading on a host of platforms. They had an internal suite of tools which provided such things as;
- global signal monitoring
- signal/mutex/sem usage logging
- priority inversion workarounds that worked...
- break on set/reset
- break on multiple threads waiting on same signal
etc. Since the "os" was custom, ( based on the Amiga OS, will you believe it...? ), this
was possible. I think Microsoft and its brilliant programmers...( cough ), should
be able to provide the same....
Anyways...moving on....
-=jarl=-
|
|
|
|
|
Actually...there is a concrete problem here....
I have threads A, B, C and D and signals 1, 2, 3 and 4.
A waits for 1, B for 2,
C waits for 3, D for 4
I set signal 2 from thread A and....C wakes up!
This is why I would like to be able to know for certain that signal 2 is actually set.
(From the windows kernel's point of view )
Currently I have a debug-info structure stored with each signal, and set/reset/create/wait wrappers which update this information.
Such as;
waiting-thread id
number of waiting threads, ( is allways 1 in this case )
id of thread which last set this signal
id of thread which last cleared this signal
etc.
Imagine my frustration.... I know for certain that the two signals 2 and 3 are distinct.
I know for certain that C is waiting for 3, ( and not for 2 ).
I know for certain that I am going mad.
Any ideas, inspirational thoughts, haiku's or anything such which might
give me a push in the right direction would be much appreciated.
p.s.
Signal = Event, in Windows speak
p.p.s
ProcExp from the Sysinternals homepage doesn't do what I need. I am concerned now
that I have found out that the Windows Native API doesn't have any methods for
monitoring signals...
-=jarl=-
|
|
|
|
|
Man, that must suck!
Any chance we can see some code? It's the only way to verify what you "know for certain".
It might also help to isolate this code into a little sample project and see if it still breaks. If so, then it would be a lot easier for any of us to help you debug it.
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|
|
And, the one thing which annoys me the most, is the knowledge, ( or assumption ), that there is going to be some exceedingly stupid thing somewhere which is causing this...
Anyways, let me get on with isolating this in some form or other so that I can share my grief in a more concrete form.
cheers!
-=jarl=-
|
|
|
|
|
I'll go an shoot myself now....
This is just too stupid.....
I had a name...a const char*...and I used it...twice....and you can all figure
out the rest from there and tell me I'm a monkey...thanks, I knew that...
oh...well..
-=jarl=-
|
|
|
|
|
We help all kinds here, even monkeys.
Sometimes it helps to take a tenth look at the code, doesn't it?
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|
|
Take a look at the CRectTracker class which is used by windows to handle the inverting etc.
Roger Allen
Sonork 100.10016
WHats brown and sticky?
A stick or some smelly stuff!
|
|
|
|
|
How can I refresh the dialog in an MFC 6 application?
What happens is that I present a dialog box with the result of many checks on the system, but the dialog is not displayed until all the checks are finished. I want it to appear as the checks are performed.
How can I do this?
thanks
|
|
|
|
|
One way is to move the code that does the checks out of the OnInitDialog function and into it a message handler that you post to yourself. Let me show you what I mean:
#define WM_AFTER_SHOWING WM_USER + 769
....
BEGIN_MESSAGE_MAP(CMyDlg, CDialog)
...
ON_MESSAGE(WM_AFTER_SHOWING, OnAfterShowing)
END_MESSAGE_MAP()
BOOL CMyDlg::OnInitDialog()
{
CDialog::OnInitDialog();
PostMessage(WM_AFTER_SHOWING);
return TRUE;
}
LONG CMyDlg::OnAfterShowing(UINT, LONG)
{
return 0;
}
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|
|
It's better to use thread.
BOOL CMyDlg::OnInitDialog()
{ CDialog::OnInitDialog();
AfxBeginThread(Refresh, NULL);
return TRUE;
}
UINT CMyDlg::Refresh(LPVOID param)
{
return 0;
}
you must declare Refresh as static member function.
A. Riazi
|
|
|
|
|
Yes, a separate thread is another option, but since MFC does not support multiple threads, it could cause problems when accessing GUI components via the thread. I just took the safer approach, which works fine.
Regards,
Alvaro
All you need in this life is ignorance and confidence, and then success is sure. -- Mark Twain
|
|
|
|
|
Thanks you very much.
I already solved it with the previous solution, but I appreciate your help a lot.
n
|
|
|
|
|
|
Thanks very much, Alvaro.
It works great.
I appreciate it
n
|
|
|
|
|
I get this message everytime I try to look up something in the MSDN: "An active X control on this page might be unsafe blah blah, do you want to allow this interaction?"
I changed all the active X security settings already to "enable" but this has no effect.
Anyone know how to disable this?
Thanks
|
|
|
|
|
hello
How can i draw a rectangle selection with the mouse, like in windows explorer when we want to select folders.
i try :
CDC dc;
...
dc.Rectangle(m_ptMouse.x,m_ptMouse.y,m_ptLast.x,m_ptLast.y);
but i can't get a transparent rectangle.
and if i try :
dc.MoveTo(m_ptMouse.x,m_ptMouse.y);
dc.LineTo(m_ptMouse.x,m_ptLast.y);
dc.MoveTo(m_ptMouse.x,m_ptMouse.y);
dc.LineTo(m_ptLast.x,m_ptMouse.y);
dc.MoveTo(m_ptMouse.x,m_ptLast.y);
dc.LineTo(m_ptLast.x,m_ptLast.y);
dc.MoveTo(m_ptLast.x,m_ptLast.y);
dc.LineTo(m_ptLast.x,m_ptMouse.y);
i get all the intermediary rectangles.
if you know how draw a rectangle selection like in windows explorer which is transparent.
|
|
|
|
|
Look up DrawFocusRect() which does the rubber-band style rectangle.
--Mike--
The Internet is a place where absolutely nothing happens.
-- Strong Bad
1ClickPicGrabber - Grab & organize pictures from your favorite web pages, with 1 click!
My really out-of-date homepage
Sonork-100.19012 Acid_Helm
|
|
|
|
|
thx !
but i have the same problem
all the rectangle stay display, i would like to have only the last rectangle.
you know how to refresh the screen?
|
|
|
|
|
Hi Everybody,
I have a question concerning MFC and its paint message. I have been working on an OpenGL application that runs a Dialog Box, with various MFC controls and an OpenGL CFrameWnd running next to the controls. The program works great when the Program has focus, but, when the program is not active the CPU usage goes upto 100% by calling OnPaint repeatedly. I have the OpenGL rendering set to use the following three messages: ON_WM_ACTIVATEAPP(), ON_WM_NCACTIVATE(), ON_WM_ACTIVATE(). These trigger flags that disable the OpenGL rendering so I know that the graphical side is not an issue.
When I mimimize the program the Paint messages stop flooding in, but when the program is in the background the Paint messages pour in. Does anyone know how to prevent the WM_PAINT messages from being sent when the window, dialog, or program is not active?
|
|
|
|
|
Well, it could be that yout not validating the window area after processing a WM_PAINT message. If you don't do that then you get another WM_PAINT from the system. Check that you use either a CPaintDC in your WM_PAINT handlers or call ValidateWindow() in them (CPaintDC does this for you in the destructor).
Roger Allen
Sonork 100.10016
WHats brown and sticky?
A stick or some smelly stuff!
|
|
|
|
|
I call Invalidate(FALSE) after each frame. Would that do the same thing?
|
|
|
|
|