|
::Sleep will work just fine. You MFC program won't even process any window messages. (In other words, it will seem to be locked up to the user.)
Tim Smith
I'm going to patent thought. I have yet to see any prior art.
|
|
|
|
|
sounds cool. i tried something like
sleep(1000);
but it do not work. (error: program does not know 'sleep')
sorry, but i have no msdn here. how must i use 'sleep'?
sunny
|
|
|
|
|
I believe the S is capitalised, as it was in the example given. 1000 equals one second.
An alternative is the user a timer, but Sleep will do what you want in this instance. A timer will allow your program to keep doing something while it 'waits' for the passage of time.
Christian
No offense, but I don't really want to encourage the creation of another VB developer.
- Larry Antram 22 Oct 2002
C# will attract all comers, where VB is for IT Journalists and managers - Michael
P Butler 05-12-2002
Again, you can screw up a C/C++ program just as easily as a VB program. OK, maybe not
as easily, but it's certainly doable. - Jamie Nordmeyer - 15-Nov-2002
|
|
|
|
|
yes, the S is capitalised.
the sleep is working fine, but i need something else:
the program should only wait, but stop working not completely.
the previous works are to be processed and then the program should go on. unfortunately it is not requestable, whether that the processes completely finished before, thereforei needs a pause, which does not freeze everything.
what can i do?
lucky
|
|
|
|
|
Ah - then Tim's answer was correct, but your question was wrong. You need to do what I said in the last post, set up a timer. I forget the syntax but if you look up WM_TIMER in MSDN you should have no trouble finding it. It's something *like* SetTimer(42, 2000, NULL), where 42 is the number that identifies your timer ( and is passed to the WM_TIMER message handler you'll need to set up with the Class Wizard ), 2000 is the number of milliseconds ( so this one waits for two seconds ) and NULL means you're not specifying your own callback for the timer. I also believe the timer will go off over and over again, so you need to KillTimer(42) when you catch it. But my MFC/Win32 days are long behind me, you should verify the details in MSDN.
Christian
No offense, but I don't really want to encourage the creation of another VB developer.
- Larry Antram 22 Oct 2002
C# will attract all comers, where VB is for IT Journalists and managers - Michael
P Butler 05-12-2002
Again, you can screw up a C/C++ program just as easily as a VB program. OK, maybe not
as easily, but it's certainly doable. - Jamie Nordmeyer - 15-Nov-2002
|
|
|
|
|
hi,
i have a mfc program with a thread:
<br />
DWORD WINAPI ThreadProc (LPVOID pvoid) <br />
{ <br />
while (TRUE) <br />
{<br />
....<br />
} <br />
return 0; <br />
}<br />
<br />
void CDialogMe::OnMy()<br />
{<br />
DWORD WINAPI ThreadProc (LPVOID pvoid);<br />
HANDLE hThread; <br />
DWORD ThreadParam = 1;<br />
DWORD ThreadNr;<br />
hThread = CreateThread (NULL, 0, ThreadProc, &ThreadParam, 0, &ThreadNr);<br />
....<br />
}
but it do not work. what´s wrong????
sunny
|
|
|
|
|
|
That is just a prototype which is perfectly valid.
My question would be is the CreateThread routine even being invoked. If so, what error is it returning. If CreateThread is working, then set a break point in the thread proc.
Tim Smith
I'm going to patent thought. I have yet to see any prior art.
|
|
|
|
|
thank you very much ....but the problem was not the thread......sorry
i found the mistake.....
sunny....
|
|
|
|
|
|
thank you very much ....but the problem was not the thread......sorry
i found the mistake.....
sunny....
|
|
|
|
|
I am trying to Print contents of a CTreeCtrl . I implemented the Print Preview functionality in the OnPrint function . The printing that I require has a constraint.
Whatever i print must be contained within 1 page or else i need to abort printing . I am able to ascertain using pInfo and PDC whether I will be xceeding a page's length or not . I am also able to tell the user that he should change his settings to accomodate more data. What I am not able to do is prevent the Framework from printing a Blank page.
i.e I return immediately from OnPrint once I realize that the page size has been exceeded .
Also when I tried to use other functions before OnPrint such as
OnBeginPrinting() I am not able to get the true size of the page using pInfo. I am getting a garbled negative number when i Check pInfo->m_rectDraw.bottom
I have been trying to solve this for quite some time and would appreciate any suggestions .
Please help
thanks
|
|
|
|
|
I am trying to write a c++ program That will ruan as a service and will reboot the machine at a certain time. here is the problem when it runs as a service it will not reboot it just skips over the system("shutdown -f -r") command. but if I run it out side of SCM (Service control Manager)it will reboot with know problem I think Windows will not let a service reboot a machine. I am using a an XP box.
|
|
|
|
|
how about writing a lil prog to reboot the machine and calling it from the service?
"traffic lights are for people who can't make their own decisions" biz stuff about me
|
|
|
|
|
already tried that and I get the same result as before
|
|
|
|
|
|
I am sorry I am not answering your question infact I am stuck with one problem and I think you have the solution. I have develoed a chat server in VC6.0 now I want to run it as service and I have no idea how to do that I think you will be having some code because you have written that you are running C++ program which is already running as service can you please help me...?
Thanks in advance
Prateeti
|
|
|
|
|
I am using the windows 2000 resource kit have my program to run as a service. If you would give me your email address I will send you the commands along with instructions plus I will send you code telling you how you can do the same thing in c++ but the microsoft way is easier
|
|
|
|
|
I am making a self-updating console application
that downloads a new version of itself, launches
the new version via CreatProcess(), and then
immediatly quits. However, it seems that the old
version DOESN'T quit and both of them run at the
same time, in the same console window and create
problems. (the program is multi-threaded)
So I guess my question is -
Is there a better way to make a program self-upgrade
itself?
Thanks for your help!
|
|
|
|
|
Hello,
I load a bitmap and draw it on my dialog background.
I've a static box on the dialog too.
I used SetBkMode(TRANSPARENT) in OnCtlColor but it doesn't work
How can i do it ?
My month article: Game programming by DirectX by Lan Mader.
Please visit in: www.geocities.com/hadi_rezaie/index.html
Hadi Rezaie
|
|
|
|
|
I am ALWAYS exploring and uncovering things in C++, and if by chance I believe I may have discovered something unusual, I revert to the various C++ textbooks for clarification and/or correction.
Here's an example of what I'm talking about: A publicly derived class ought to be able to access "protected" members of its base class. Well this sample exercise I did, doesn't seem to follow that rule.
This is what the compiler said, "error C2248: 'storename' : cannot access protected member declared in class 'Store'."
==============================================
class Store
{
etc.
protected:
string storename; // I should be able to access this member !!!!!!!
int storenum;
};
class Food : public Store
{
public:
Food(string na, int num, string foodItem, float retprice, int invAmt)
: Store(na, num)
{ etc. }
void Msg(string msg)
{
reinterpret_cast<<store*>>(this)->Msg("HQtrs"); // dbl angle brackets needed for msg
cout << '\n' << ((Store*)this)->storename << endl; // error here !!!!!!!
etc.
}
etc.
};
==============================
The reason I'm casting the 'this' pointer to Store is to qualify the data member to which I am referring.
But why is the compiler telling me that this publicly derived class cannot access the protected member of its base class?
Thanks for any help. I appreciate it.
William
|
|
|
|
|
A derived class can internally access the protected member. You're trying to access it from the global namespace.
What I mean is, an instance of Store could refer to storenum within one of its methods. But storenum isn't accessible outside the class. That would make all protected members essentially public!
/ravi
Let's put "civil" back in "civilization"
http://www.ravib.com
ravib@ravib.com
|
|
|
|
|
Thanks Ravi.
I don't believe I'm accessing the class member from the global namespace. I am accessing it from within the definition of the derived class.
William
|
|
|
|
|
Did you mean to do void Food::Msg(string msg) instead of void Msg(string msg) ? The way you have it, Msg() is declared in the global namespace.
/ravi
Let's put "civil" back in "civilization"
http://www.ravib.com
ravib@ravib.com
|
|
|
|
|
Thanks Ravi.
Because I am defining the function 'Msg()' inside the class definition, I don't need to qualify it with the class name and the scope resolution operator. Therefore, the definition of 'Msg()' is correct.
There is also another function named, 'Msg()' defined in the base class 'Store' (which I did not show), which is why I chose to use the 'reinterpret_cast' cast operator to access that specific 'Msg()' function in 'Store'. But that's NOT where the problem is happening. That line gets executed fine, and everything gets done that is supposed to get done in that line. Everything is OK with that line!!!
The problem is with the next line following it, where I'm accessing a protected data member of the base class. That's where the problem is occurring.
Now, according to the rules of C++, a publicly derived class is allowed to access protected data members of its base class, but the compiler is not agreeing, and that's the line where the disagreement is pointing to.
William
|
|
|
|