|
I'm using this code to create a dialog box:
CEdmondDlg *dlg;
dlg = new CEdmondDlg;
dlg->Create(IDD_EDMOND_DIALOG);
this creates the dialog but it doesn't have focus. How can I fix this?
|
|
|
|
|
dlg->SetFocus();
Christian
The content of this post is not necessarily the opinion of my yadda yadda yadda.
To understand recursion, we must first understand recursion.
|
|
|
|
|
This doesn't work.. I think maybe because my whole program doesn't have focus when it is called. Is there a way to give focus to your program even when you don't control the program that DOES have focus?
|
|
|
|
|
Then probably your whole program should grab the focus in a similar wayt first. Why doesn't it have the focus, is it a background task ?
Christian
The content of this post is not necessarily the opinion of my yadda yadda yadda.
To understand recursion, we must first understand recursion.
|
|
|
|
|
How to get handle of an edit control of another different running application?
|
|
|
|
|
How to get handle of an edit control of another running application?
|
|
|
|
|
I don't think that's possible. Search the MSDN on-line library for the keyword "handles". There's an article that
touches on that subject. The problem is that, even if you could get the handle, you probably couldn't do anything
with it because the object is in the address space of the other process. A handle to an object in process A cannot
normally be successfully referenced in process B because the object may, or may not, be the same object.
|
|
|
|
|
When assigning a CString to a BSTR, does CString contain a copy of the BSTR or is it a pointer to the same BSTR?
If I later destroy the original BSTR does this make the CString unusable?
Example: CString strAnotherCopy;
BSTR b;
b = SysAllocStringByteLen("Hello World", 12);
strAnotherCopy = b;
SysFreeString(b);
At this point, is strAnotherCopy still valid?
|
|
|
|
|
Yes, CString contains a copy of the BSTR, but not stored as a BSTR.
|
|
|
|
|
Hi
I have a producer thread of the following form:
while (1)
{
g_cs.Lock();
if (GetPkt()) g_PktEvent.SetEvent();
while (index==FULL)
{
g_cs.Unlock();
WaitForSingleObject(g_BufferEmptyEvent,INFINITE);
break;
}
g_cs.Unlock();
}
and a consumer thread as follows:
while (1)
{
g_cs.Lock();
if (index>0) g_BufferEmptyEvent.SetEvent();
while (index==0)
{
g_cs.Unlock();
WaitForSingleObject(g_PktEvent,INFINITE);
break;
}
g_cs.Unlock();
}
When I run the program, the threads block after some time (the buffer remains empty). The producer thread does not produce any pkt to place in the buffer.
Can anyone please help me find out where the bug is?
Thanks a lot
|
|
|
|
|
There are numerous problems with your code:
First, in your producer thread, there's no reason for the second while loop. Since you never loop, you call break at the end of it no matter what. This can be achieved with an if statement instead.
Second, in the case of index==FULL, then you will call Unlock() twice while only calling Lock() once. That will cause all kinds of problems.
The same applies for your consumer thread.
But the real problem here is likely that you are in what's called a deadlock, or race condition. Your consumer thread is waiting in WaitForSingleObject for a packet ready event, and your producer is waiting for a buffer empty event. Since both threads are waiting at the same time, they wait indefinately.
|
|
|
|
|
Thanks for replying.
I actually changed my code so that I'm now using an if statement instead of while. I also modified the code such that I only call Unlock() once. But I'm still having the same problem.
Any suggestions?
Thanks again
|
|
|
|
|
Yes, I already told you in my first response.
You're in a deadlock, you need to make sure you never get into a deadlock by changing your algorithm so that you are never causing two waits to be waiting on each other.
|
|
|
|
|
Could anyone tell me how to hibernate machine from my program?
|
|
|
|
|
I'm experimenting the usage of bitmaps. I started by downloading an example project from codeproject and I'm trying to modify it:
http://www.codeproject.com/miscctrl/oscope.asp
I would like the oscilloscope to plot the points starting from the left side of the screen, ending at the right side.
At the moment, the bitmap points are plotted from right to left (I would like it to be the opposite). I already added a multiple graphs' support to the program, but can't solve this simple direction problem.
Can someone give me a hint on how to fix the situation, please?
|
|
|
|
|
Desktop also a window in VC++. Can we write a program to capture it, and can we change the caption of start button.
If so please tell me the procedure.
Thanking you
|
|
|
|
|
It's possible, but this requires a lot of work, since the start button is an owner drawn button. You would need to subclass the button, then do your own painting.
What you would need to do is enumerate the desktop windows child windows looking for the Shell_TrayWnd, then enumerate the Shell_TrayWnd's child windows looking for a window with the button class. Once you get that HWND, can then sublcass it into a CButton using CButton::Attach
|
|
|
|
|
If you would like an example go to: http://homepage1.nifty.com/kazubon/tclock/indexe.html
|
|
|
|
|
Can we create voice recognition software in VC++. If so please tell me the procidures.
Thanking You
|
|
|
|
|
You can find some ActiveX controls at www.activex.com search for "voice recognition" or "speech recognition". Also Dragon Sys (makers of the famous Dragon Naturally Speaking) has a developer's kit, go to Dragon Developer's Site but expect to pay big licencing fees...
|
|
|
|
|
In windows 95/NT within control panel, we can find an icon fonts. If we open it then we can see the list of fon'ts.
Now i want to develop own font file, to be used in my native language. Is it possible in VC++.
If so please, tellme the procedures
|
|
|
|
|
You need a Truetype font editor, search for pages like www.microsoft.com/OpenType
|
|
|
|
|
Hi
I have programmed a tool. In this tool i have passwords and other strings in the code. If i compile it, make an *.exe -file, i can easy read this strings, if i open it in the notepad. How can i encrypt the code during compileing ?
I don't like to encrypt all the strings manual and i like to have the original strings in the code !
Thank's
|
|
|
|
|
storing passwords in code is always a bad idea. - even if you encrypt them - if they have to be decrypted before use then it will not stop a cracker/hacker from getting the passwords it will only slow them down and not by much.
Holy Handgrenade of Antioch instructions
|
|
|
|
|
I agree with the other poster in saying that it is a very bad idea to hardcode passwords into your code, or to store actual passwords in any form.
It is MUCH better to save a crytological hash of the password, such as an MD5 hash (do a web search for "Request for Comments: 1321"). A crypto hash has the property that given a plaintext string, it's easy to compute a hash code. BUT given the hash code, it's almost impossible to get back to the plan text. It's perfectly safe to store hash values in an ini file or the registry, or even to just post it on a billboard on the Motorway.
What you do is get the password, run it through a hash algorithm, and compare the password's hash value with the one you saved. If they are equal, then then the user has entered the correct passsword.
Jim
|
|
|
|