|
I was used ownerdraw for Menu Items.I was drawn many menu items with bmps.
But I want check only one item among the no of menuitems.How to change the state of the MenuItem from CHECKED to UNCHECKED?
|
|
|
|
|
Use OnCommandUpdate handler!
A. Riazi
|
|
|
|
|
Hi world
I'm looking for a function who tell me how many processor (mono or bi) there is inside a computer (mother board)...
Does somebody have an idea?
Thanks in advance...
Hello World!!!
from Raphaël
|
|
|
|
|
Raphaël Kindt wrote:
I'm looking for a function who tell me how many processor (mono or bi) there is inside a computer (mother board)...
With the introduction of "hyper threading" CPU's, good luck...
But to find out how many CPU's the system thinks are available, you can use GetSystemInfo.
|
|
|
|
|
Mike Nordell wrote:
With the introduction of "hyper threading" CPU's, good luck...
Yea, for now, but on Windows Server 2003 you can use GetLogicalProcessorInformation()
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
|
How can I execute an exe from my VC++ 6 application?
Thanks
|
|
|
|
|
Use ShellExecute.
A. Riazi
|
|
|
|
|
Could you give me an example?
Thanks
|
|
|
|
|
Do look at the link in my other post (point 6.4 in Michael Dunn's C++ FAQ). You have all the examples you need to achieve what you need.
~RaGE();
|
|
|
|
|
for example, if you want to execute notepad.exe from your dialog, use following statement:
<br />
ShellExecute(m_hWnd, "open", "c:\\WINNT\\notepad.exe", NULL, "c:\\WINNT", SW_SHOWNORMAL);<br />
A. Riazi
|
|
|
|
|
Thanks!
I appreciate it!
n
|
|
|
|
|
|
|
Thanks a lot. That page is great for reference!
n
|
|
|
|
|
How to find a window handle by knowing only the executable path of the windows ?
Thanks
Olivier
|
|
|
|
|
Is the Executable running ?
|
|
|
|
|
Yes, the executable is running and I know the full path name
|
|
|
|
|
To find the window Handle you need to know which window you are looking for.Windows are basically running objects in memory. At File level it make no sense.So windows classname or caption is essential for finding the handle.you can use FindWindow(...) API to get handle..
Jast have a Look on MS SPY++ utlity. Using that you can figure out classnames /captions and also handles
|
|
|
|
|
olivier wrote:
knowing only the executable path
Has pretty nothing to do with the window itself. You'll have to know something about the Window name, or classes. Have a look at EnumWindows() .
~RaGE();
|
|
|
|
|
Hello,
I have a function that receives a (void *) parameter:
GetSizeOfTypeAndDoSomeOtherLargeStuffWithIt(void *pParam);
I use this function passing a pointer to all sort of numerical variables in order to process them without overloading that function and having to maintain a lot of overloaded functions... (I can pass from &bool to &double variables tot that function).
when I do sizeof(pParam); I always get the size of the void * and if I would be passing a char I would like to get the size of the char and if I would be passing an int I'd like to get the size of an int ...
Is this possible?
Thank you in advance...
|
|
|
|
|
Joan Murt wrote:
when I do sizeof(pParam); I always get the size of the void *
Of course. Anything else would be such a serious compiler bug that the compiler would be virtually useless.
I would like to get the size of the char and if I would be passing an int I'd like to get the size of an int...
Is this possible?
No, the kind of polymorphism you are interested in is not possible. You might consider adding a type argument also, or maybe have a look at templates.
|
|
|
|
|
Why aren't you using a template function?
eg:
<br />
#include<iostream><br />
<br />
using namespace std;<br />
<br />
template<class T> void Function(T Var)<br />
{<br />
cout << "Size is " << sizeof(Var) << ", value is " << Var << endl;<br />
}<br />
<br />
int main(void)<br />
{<br />
int i = 3;<br />
double d = 5.56;<br />
Function(i);<br />
Function(d);<br />
<br />
return 0;<br />
}
The output being:
<br />
Size is 4, value is 3<br />
Size is 8, value is 5.56<br />
--
Ian Darling
|
|
|
|
|
First of all thank you,
I'm trying in a little program what you've told me, but I'm getting this error in each call:
C:\Projectes\TAM i Àmbit general\00 - Inconsistència i Proves\ObtenirDimensionsPunterVoid\ObtenirDimensionsPunterVoidDlg.cpp(118) : error C2893: Failed to specialize function template 'void __thiscall CObtenirDimensionsPunterVoidDlg::calcula(T *)'
With the following template arguments:
'bool'
what can I do to solve it?
the code I use is:
CPP FILE:
template<class T> void CObtenirDimensionsPunterVoidDlg::calcula(T *p)
{
UpdateData();
this->m_iAntic = sizeof(p) * this->m_iFactor;
UpdateData(FALSE);
}
void CObtenirDimensionsPunterVoidDlg::OnButton9()
{
bool b = false;
calcula(&b);
}
HEADER FILE:
public:
template<class T> void calcula(T *p);
NOTES:
1. I need to pass the parameter by reference... (I must be able to read it's value after the function has finished... this is why I've placed the *.).
|
|
|
|
|
Well, for starters I think you are taking the size of the pointer type, and not the actual type (ie, sizeof(p) is returning the size of a T* which is probably always going to be 4 bytes, not the size of a T, which for a bool in VC++, is probably 1 byte. You can resolve this by either passing by value and returning any changed value (see 1), or passing by reference as opposed to by pointer (see 2)
1:
<br />
template <class T> T CObtDPVD::calcula(T p)<br />
and then using:
<br />
bool b=false;<br />
b = calcula(b);<br />
2:
<br />
template <class T> void CObtPVD::calculat(T &p)<br />
and then using:
<br />
bool b=false;<br />
calcula(b);<br />
As for the compiler error, I'm not sure where that's come from.
HTH
--
Ian Darling
|
|
|
|