Guidance
指路人
g.yi.org
Guidance Forums / wxWidgets (wxWindows) in C++ / Needed help using windows WMI and CMI classes in Dev-c++

Register 
注册
Search 搜索
首页 
Home Home
Software
Upload

  
Forum List • Thread List • Refresh • New Topic • Search • Previous • Next First 1 Last
Message1. Needed help using windows WMI and CMI classes in Dev-c++
#2777
Posted by: 2003-10-26 19:00:46
Hi, I am using Dev-c++ to write a program that need to retrieve system hardware information form users PC.. The standard Win APIfunctions  turned out quite useless, as I want to return for example processor manufacturer, clock, cache size etc..
However in MSDN i found that in WMI there is a WIN32_Processor class that contains all information I might need(about cpu).. (there is also a CIM_Processor class)..
My problem is that I can`t find I way to accsess elements of these classes.. I tried to take a MSDN tutorial but the description were not too clear and code that was there as example didn`t compiled on my Dev-c++ compiler..
Can somebody share his experiece in this field and show me how to do this correctly..
P.S.
as I am very unexperiecned in windows programming it would be really nice if someone could post fully working code example  that compiles on Dev-c++ compiler (if posible).
Of course any other suggestions may also help me..
Message2. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2778
Posted by: upCASE 2003-10-26 21:28:25
Hi there!
Well, even if it has been quite a while since I did "real win32 API" coding I'll try to be of help :)
I just browsed the MSDN and to me it seems like  WIN32_Processor is a class that comes with the platform SDK, which, how I see it, has to be downloaded first (maybe it comes with new versions of MS VC, but I'm pretty sure that it doesn't come with Dev-C++).

I'm not really sure if you can get this stuff to work properly with Dev-C++. Maybe it would be better to google a bit to find other classes/functions you could use....

Ok... Now you got me started :))
I guess one good way to do it is using asm. Here's a little source I wrote a while ago that will/should list CPU vendor name, CPU name, feature flags and (if it's there) the cpu serial.

#include <iostream>
#include <cstdlib>
using namespace std;

char vendor[16];
char name[48];
int feature;
int serial;

int main()
{	
	
	cout << "Gimme da specs, by upCASE" << endl;
	cout << "---------------------------------------" << endl<<endl;
	asm("movl $0, %eaxnt"
			"cpuidnt"
			"mov %ebx, (_vendor)nt"
			"mov %edx, (_vendor+4)nt"
			"mov %ecx, (_vendor+8)"
			);
	cout << "CPU Vendor string:t " << vendor << endl;
	
	asm("movl $0x80000002, %eaxnt"
			"cpuidnt"
			"mov %eax, (_name)nt"
			"mov %ebx, (_name+4)nt"
			"mov %ecx, (_name+8)nt"
			"mov %edx, (_name+12)nt"
			
			"movl $0x80000003, %eaxnt"
			"cpuidnt"
			"mov %eax, (_name+16)nt"
			"mov %ebx, (_name+20)nt"
			"mov %ecx, (_name+24)nt"
			"mov %edx, (_name+28)nt"
			
			"movl $0x80000004, %eaxnt"
			"cpuidnt"
			"mov %eax, (_name+32)nt"
			"mov %ebx, (_name+36)nt"
			"mov %ecx, (_name+40)nt"
			"mov %edx, (_name+44)nt"
			
			);
	cout << "CPU Name:tt " << name << endl;
	
	asm("movl $1, %eaxnt"
			"cpuidnt"
			"mov %edx, _featurent"
			);
	cout << "CPU Feature Flags:t " << hex <<feature << endl ;
	
	
	asm("movl $3, %eaxnt"
			"cpuidnt"
			"movl %edx, _serialnt"
			);
	cout << "CPU serial no.:tt " << hex <<serial<< endl;
	
	system("pause");
	return 0;
}
I just found some very interesting code, too bad it's written in Pascal. It's written in inline asm instructions, too... I'll have a look at it. Stay tuned, maybe I'll have the time and rewrite it in C++.

upcase
upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message3. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2791
Posted by: 2003-10-28 22:54:46
Thanks for your help.. I will try this code as soon as I will have time..
Also I must say that my first thought was to do this job by ASM code calling CPU_ID function.. But since I am absolute 0 at ASM, I could only rely to others help with ASM code.. Only code that gave me one person failed to run on Dev-c++.. i don`t know why but one explained me that this is conected to diferent ASM standarts talked somethig about BCC or GCC etc:)..
However I will shourly try to your code and shoure I will wait for anny other advices..
Besides this I suspect WMI works only on winXP and 2000 not on win 9x platforms.. someone knows if this is true?(of course now my proority will be your ASM code, but still if someone knows he could tell, just because I may need to know other syste information too - for example total size of PC ram, FSB, memory speed..(of course for begining it would be very nice to get CPU information) I just wonder if there isn`t any system file or registry keys in  win 9x and/or xp and 2000 os form which you can get this information quickly and easy..)
Message4. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2793
Posted by: 2003-10-28 23:39:19
thanks i tried your code it works.. Although somehow strange that when I put it in my program(that uses winapi) function i get "undefined reference to vendor", but when i copy code to new file it works..
Thank you for code.. It would be nice if you invented how to get CPU speed and probably other details also..
If you feel really nice you could also put some coments to your ASM code so I could at least guess what it is doing..

Dawis
Message5. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2800
Posted by: upCASE 2003-10-29 01:40:46
Hi!
I'm currently a bit busy with finishing off some other project, but I had a look into the matter and developed a little class that could be used for getting such info (currently CPU name, vendor string and an estimation of the speed in MHz).
Problem is this "extended asm" in AT&T syntax... I'm currently stuck on how to get the correct string values copied, but it works partly. So, maybe tonight or tomorrow I'll post something useful :)
Oh, yes, sure, I can add some comments :)

About this "undefined reference": You'll have to declare all variables global, otherwise it won't work. This is something that gives problems right now when I want to store everything in class members. But it can and will work!! I'm not giving up! :))


upcase
upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message6. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2803
Posted by: 2003-10-29 01:58:54
Thanks for your enthusiasm..
I got your code working in my program.. However  I have some strange problems and I wonder if anyone else has faced such..
The situation look foloving:
your code is included in seperate header file and basicly acts as function that is called by another function..
Your code there is a function that returns char array..
the problem is foloving - when I run your code as seperate program and use cout to output return data of your function all works corectly(or almost)..
but when I use your code as a function in my windows interface c++ program and write something like this
char cpuinf[100];
cpuinf[100]=yourcode();//yourcode is function that executes your code
                                      //and returns char array
and write some window item to display the contents of cpuinf it shows only some miserable garbage..
May be the problem could be that win interface use special coding to characters that is no compatiable with that your code gives out..?
may be you know where could be problem?
Message7. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2804
Posted by: 2003-10-29 02:21:29
I found interesting solution to my problem(of course I shopuld keep in mind that it is interesting only because my knowleddge level is not too hihg:)..
Since all variables in our code ar global.. I referdirectly to the global variable and get the right results.. strange only that data is spoiled when I put return value tu function and asign that value to new string..
Also strange that function can change global variables:
I heard functions only can take values but not change them..? or this is true only about those values you define in functions declaration i mean:
<return type><function name>(those variables);
..
anyhow I will be glad to hear some explanations from more experianced people
Message8. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2808
Posted by: upCASE 2003-10-29 04:39:53
Hi!
Well, don't get me wrong now, I really don't want to offend you, but maybe you should consider buying a good book about C/C++ and read the chapters about pointers and arrays.

char cpuinf[100];
cpuinf[100]=yourcode();

This is more or less nonsense, or at least it doesn't do what you thought it would. Something like that would work in Pascal as far as I remember, but not in C.
Here is what I presume you wanted the above code to do:
1. declare an array of 100 chars
2. call yourcode() to get some string through ASM
3. assign the string to cpuinf, so that cout << cpuinf would show it.

I don't know what yourcode() returns, would be good to know the prototype, but whatever I try this doesn't even compile. The reason is pretty simple. With
cpuinf[100]=yourcode();
you are assigning the 100th element of cpuinf something that is returned by yourcode(). You don't write to cpuinf, just to the 100th element.
Handling strings in return values is something that normaly is done in a different way, because when using arrays you're really using constant pointers to the first element of an array that can be modified by giving it an offset.
char d[100]; and
char* const c = new char[100];
are more or less the same.
You can't have a function that returns char[] or char[100]. It could return a single char or a char*.
So however you did it, while printing cpuinf it will hold random chars, that's where the garbage comes from...
For a more specific answer I'd need some source code I could comment on. Writing down everything about strings, arrays and pointers would be too much for me right now :)

For your second question: You're right!
If you define a variable global you have access to it from everywhere in your program. This is something newbies often to because it simplifies a lot of things, but should be avoided for data security. You'll loose overview about what function modifies the variable and data will become inconsistent.
Using a prototype like
<return type><function name>(those variables);
"those variables" will be on the stack and hold the values you assigned them. They can be seen as copies of you real variables which you passed the function. So, if you modify the variables and the function returns, the stack will be cleared and these temp variables won't be there anymore. This is why you would have to return something you need outside of that function.
There are ways to modify variables inside a function. One would be to pass pointers to these variables instead of values (so it's a "call-by-pointer" instead of a "call-by-value"). Another way would be references in C++ (call-by-reference).

So, as a temporary conclusion: Learn about pointers! It will save your ass! :)
As I said: If you want a better explanation send your source, or at least the relevant part, so that I can comment on something. I'm to lazy right now to make up a good example :)

upcase

upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message9. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2809
Posted by: 2003-10-29 05:19:40
Yeah.. a lot of that is clearer now.. thanks for your time..
I know basics abot variables, arrays and such things and I even use them pretty often.. But when things come to pointers, references and vectors things are not so clear anymore.. may be I just need to look at good examples using those things..
about your version - yes I really thought that code stores the return of function into char array.. of course i was mistaken.. yourcode() is shorhand of asm function you gave me..
about pointers..
so far I don`t understand if function returns value that in fact is adress of some variable or starting point of array how can it really write data to it..
this actualy means varuable or array exists in the memory it is modified and only adres to it is returned.. however what is the point of returning adress if the adres should be known well before funtion ever touches the variable.. (unless the function creates it)..

Dawis

P.S.
post your code(i mean CPU info) when it is ready..
Message10. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2825
Posted by: upCASE 2003-11-02 00:34:38
Hi!
Sorry that it took a bit longer :)
I hope the following code helps...

cpuspecs.h

#ifndef __CPUSPECS_H
#define __CPUSPECS_H

#include <ctime>

class CpuSpecs
{
    char vendor[13];
    char name[48];
    unsigned long feature;
    unsigned int serial;
    unsigned int mhz;
    
public:
    //sets up all member variables
    //may take some time because the MHz rate gets calculated
    CpuSpecs();
    ~CpuSpecs(){};

    unsigned int getCPUMhz(){ return mhz; }
    char* getCPUVendor(){ return vendor; }
    char* getCPUName(){ return name; }
    unsigned int getCPUSerial(){ return serial; }
    
    //get the features
    bool hasFPU(){ return feature & 1; }
    bool hasMMX(){ return (feature >> 23) & 1; }
    bool hasSSE(){ return (feature >> 25) & 1; }
    bool hasSSE2(){ return (feature >> 26) & 1;}
    bool hasIA64(){ return (feature >> 30) & 1;}
        
private:
    void calcMhz();
    void CPUtick(unsigned int* hi,unsigned int* lo);
    void vendorName();
    void cpuName();
    void serialNumber();
    void featureFlags();
    
};

#endif
cpuspecs.cpp

#include "cpuspecs.h"
#include <cstring>

//ctor - gather up infos
CpuSpecs::CpuSpecs()
{
    serial = mhz = 0;
    calcMhz();
    vendorName();
    cpuName();
    featureFlags();
    serialNumber();
}

//get the vendor name
void CpuSpecs::vendorName()
{   
    //More or less an ugly hack to make getting the strings easier
    union{
        char c[13];
        int i[3];
    } buf;
    
    //cpuid with EAX=0 -> returns vendor string in EBX:EDX:ECX
    asm("cpuid" : "=b"(buf.i[0]), "=d"(buf.i[1]), "=c"(buf.i[2]) : "a"(0));
    //terminate the buffer
    buf.c[12] = '\0';
    //copy the buffer to our member variable
    strncpy( vendor, buf.c, 13);
    
}

void CpuSpecs::cpuName()
{
    union{
        char c[49];
        int i[12];
    } buf;
    
    //call cpuid three times to get the complete cpu string
    asm("cpuid" : "=a"(buf.i[0]), "=b"(buf.i[1]), "=c"(buf.i[2]), "=d"(buf.i[3]) : "a"(0x80000002));
    asm("cpuid" : "=a"(buf.i[4]), "=b"(buf.i[5]), "=c"(buf.i[6]), "=d"(buf.i[7]) : "a"(0x80000003));
    asm("cpuid" : "=a"(buf.i[8]), "=b"(buf.i[9]), "=c"(buf.i[10]), "=d"(buf.i[11]) : "a"(0x80000004));

    buf.c[48] = '\0';
    strncpy( name, buf.c, 49);
    
}

void CpuSpecs::featureFlags()
{
    unsigned long t;
    //returns the feature flags in EDX
    asm("cpuid" : "=d"(t) : "a"(1));
    feature = t;
}

void CpuSpecs::serialNumber()
{
    int temp;
    //get the cpu serial or 0
    asm("cpuid" : "=a"(temp) : "a"(3));
    serial = temp;
}

void CpuSpecs::calcMhz()
{
    unsigned int h,l,lasttick=0;
    unsigned int time1,time2;
    
    //get the time
    time1 = clock();
    time2=time1;
    //get the cpu ticks
    CPUtick(&h,&l);
    while(time2-time1<1000)
    {
        time2 = clock();
    }
    //get the ticks again
    CPUtick(&h,&lasttick);
    //approx. MHz
    mhz = (lasttick-l)/1000000;

}

void CpuSpecs::CPUtick(unsigned int* hi,unsigned int* lo)
{   unsigned int high, low;
    //Read Time Stamp Counter
    asm(
        "RDTSCnt"
        : "=d" (high), "=a" (low) 
    );
    *hi=high;
    *lo=low;
}
main.cpp

#include <iostream>
#include "cpuspecs.h"
using namespace std;

int main()
{
    CpuSpecs specs;
    
    cout << "MHz approx.:t" << specs.getCPUMhz() << endl;
    cout << "Vendor:tt" << specs.getCPUVendor() << endl;
    cout << "Serial:tt" << specs.getCPUSerial() << endl;
    cout << "CPU Name:t" << specs.getCPUName() << endl;
    cout << "Has FPU:t" << specs.hasFPU() << endl;
    cout << "Has MMX:t" << specs.hasMMX() << endl;
    cout << "Has SSE:t" << specs.hasSSE() << endl;
    cout << "Has SSE2:t" << specs.hasSSE2() << endl;
    cout << "Has IA64:t" << specs.hasIA64() << endl;
    
    system("pause");
    return 0;
}
Note: This uses AT&T syntax, so it won't work with MSVC. Newer versions of "as" can deal with intel syntax, but I didn't feel like rewriting it :)

upcase

upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message11. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2832
Posted by: guidance 2003-11-02 08:59:06
Great work! Thanks! I've put it separatedly here: http://g.yi.org/f.php?f=10174 , hope useful to others.
Message12. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2833
Posted by: 2003-11-02 17:08:59
Thank you very much.. and this code is really compiling on my DEv-c++ which means I really can get the frequency now.. thanks for your time..

Also now I am looking through your code and thinking how to seperate the function specs.getCPUMhz()  from others.. the reason is that your previous code was ok too it just didn`t returned cpu clock.. So I want to add to your previos code just this function also the others may be very useful some other time and not only to me..
Ok I will try..
but really thanks for the job.. your code is fine..
Also if you feel enthusiasthic you coulddevolop this code further for example I wonder how the brandname of the core of procesor can be returned..(you know Thouroughbred, thunderbird etc.) .. Apart form this there is such things as FSB(I think that we could get if we divide cpu speed by multiplier, but how to know multiplier?:)..  speed of the RAM memory is aslo such thing that I would like to get..(I don`t know form where they are readed but i think it is ASM intructions too)
Aslo I don`t need al these features now I such a code would be very valuable not only to me but to many more people..
But of course this is only if you really feel so enthusiasthic:)
Message13. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2835
Posted by: upCASE 2003-11-02 21:01:20
Hi!
Glad it worked and was useful to you.

Actually I just revised my code and came to the conclusion that I'll rewrite and update it. I'll add things like cpu family and maybe cpu brand. Cache info will be included, too. About the FSB I'm not so sure but I'll see what I can do.
Guess I'll have to rewrite a good part of it, because I think it's somehow ugly in style. :)

Since I've got work to do next week it'll take a while, but maybe next weekend I'll have it ready.

upcase
upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message14. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2842
Posted by: 2003-11-02 23:39:23
OK,

   your function is really very usefull.. I included it in my project and it displays processor frequency as it is needed and when it is needed..
However some people(alpha testers:) report to me that it doesn`t detect CPU Name: for intel processors.. for example if processor brandname is PIII it just shows nothing .. it works fine with AMD athlon procesors.. not sure how about newer Intel processors such as P4...
Do you know where could be problem and how can we fix it?
The frequency is detected OK for all procesors so far.. I just need to return procesor brandname for intel procesors... do you know how to do it?
It would be really nice..:)
thank you for your time once again.. youre the best guy I have ever met in forums:)
Although I don`t understand how work some of the asm funtions they are really useful to me already now.. I hope others will find them useful too.

Dawis
Message15. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2843
Posted by: upCASE 2003-11-03 04:45:35
Hi!
Enough, enough, or I'll have to start blushing :)
Thanks for your kind words and praises, but please stop now, I'm to shy :))

Yes, I know that this code may cause trouble and sometimes doesn't work. That's why I'll have to rewrite it :)
Problem is that "cpuid" assembler instruction. First I should check if it is available, because especially older processors don't know it. Then there's a problem that early P5 processors don't return a vendor string (what you might be experiencing now with the P3). Maybe it's just that extended cpuid levels aren't supported... I'll have to check for that too, marking the not available things with blank arrays or a line like "unknown". And of course it would need a more detailed info on the cpu brand (to answer your question: Yes, it is possible.)

If there's anything else that occurs while alpha testing it, it would be nice if you could tell me some details about it (processor type and what gives the error, what is returned correctly). It's pretty hard to find some really complete docs on this. I gathered info from different sources and docs, so it's quite logical that there will be errors, faults, etc...
But from what I've read so far it should be possible to make it work on all processors starting from a 80486.

So, let's pray that I find some time (or somebody else) to implement the new stuff and tidy up the old sources. :)

upcase
upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message16. Re: Needed help using windows WMI and CMI classes in Dev-c++
#2848
Posted by: 2003-11-03 05:42:32
hmm.. so far the only problem I spoted was with P3 - the result file showed no cpu name which means funtion didn`t returned one..
However the situation is not so hopeles as I thought - hence the function DID returned the cpu name for newer celeron - 1400mhz(oc at 1600 but it is not important)which means the P3 was just too old or something for this function..
Message17. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3068
Posted by: 2003-12-13 05:41:00
Hi Upcase!

Can you share if your code if you had made someinnovations to your function that determinates CPU clock and type..
Or as it seems to me you are just too busy these days..?
Message18. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3071
Posted by: upCASE 2003-12-13 18:25:14
Hi!
Yes, I'm a bit busy :(
But I'll see if I can post it tomorrow. Currently it's broken, because I tried to determine the FSB speed, which isn't that easy, by using assembler. Problem is that it doesn't work. I know why and even found some sites (most of them about virus programming) with workarounds, but I don't seem to be evil enough to make it work :)
There should be a possibility by using the MS DDK, but I have no clue about that...

I'll review my code tomorrow and mail it to you. Is your adress correct?
If you say that it is better than the first one I'll release it either here or on my homepage.

upcase
upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message19. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3072
Posted by: 2003-12-13 19:31:00
Hi again!

Yes my email address should be correct.. Only that server is blocked from abroad trafic(we have to pay for that here in Latvia).. However I think email will workd because you aren`t downloading anything from us when sending email just uploading.. So I think my email will work...

Can you tell a bit about your code what have you changed what is better, and what is more..{of course I can look at it for my self but as I am 0 in ASM the fnction names and return values should be very obvious{last time I managed to understand}}.. I am allready using your code in one project - it is freeware computer test program currently on early devolopment stage.. If you want I can give you to try it..  Hope you don`t mind for using your code..

I am glad you are trying to catch FSB information.. Do you think you will make it or are you allready giving up? If you think to do it in nearest time
I can wait a little bit longer for your code.. Because in next few days I won`t have time to look at it anyhow - I have one exam to pass(i hope) on Monday..

About other things I asked to you - do you feel brave to code your program to catch other information like CPU core brandname, Memory manufacturer, speed, type etc. ?

To date I haven`t even managed to read anywhere how to catch such information form a PC.. I fear it may be not so easy, and you have to use hevy ASM coding or spesific windows functions.. {when I tried to accsess windows WMI classes I failed - I had to copy a lot`s of code ony to try acsess them, but that code from MSDN didn`t even compiled on my
Dev-C++ }

Well as I understood you too are using Dev-c++, and are a lot of more experieced than me.. So I will ask - have you heard of any patches or updates you can aply to Dev-C++ compiler after what you can tell your compiler to optimise code specially for AMD cpu`s or speciallu for Intel cpu`s.. May be these manufacturers have something like libraries or additions to compiler that are designed for optimisation of code..
But I fear I do not know how to use them.. have you got any experiece in this field?

About your homepage - can you share link to it?

Dawis
Message20. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3096
Posted by: upCASE 2003-12-16 21:03:05
Hi!
Just send the code to you as an early christmas present :)

About my homepage:
http://upcase.malteser-gl.de
It's a temporary location till I can afford my own domain.

upcase
upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message21. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3254
Posted by: 2004-01-17 23:11:24
Hi.. sorry fol being so lazy in last time..
   I looked at your code just today and will try to implement it in my aplication.. I see you have done a hard work in recognising more older CPU`s..
However I will need to modify a little bit your code to implement in my aplication.. You see I need information about cpu`s to be stored in some global char arrays so I can use later them when I need in my aplication..
my aplication uses WIN API(GUI) so console aplication output functions are not needed in my case..
I hope you don`t mind if I make some modifications to implement your code..

Dawis
P.S.
May be you wish to see on what I am working on? I could send you executable files of my benchmark aplication..
May this will give you necessary courage to continiue your work towards FSB:)
Message22. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3256
Posted by: upCASE 2004-01-18 21:26:33
Hi!
I'll just quote myself (written in the sources):
"You may use this code as long as you give credit to the author and inform him about what you did with this code. Example code or apps are appreciated! You may use this code freely in freeware and open source apps. If you want to use it in commercial or shareware apps you'll have to contact the author first!" :-)

Yes, please send me a copy :)

upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Message23. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3385
Posted by: 2004-02-16 20:24:13
Please help me as i am a newbie to wxwindow i am having some problems in configuring wxwindows and compiling the same in Devc++.I am given a task of making a utility to monitor three server and its interfaces .I would like to do it in c++ with wxwindows.If any one of you have any idea regarding this or help me with the code i would be very thankful to you .God Bless you
Message24. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3463
Posted by: 2004-03-06 00:14:23
Hi! upCASE!

Where have you gone? I tried to contact you through e-mail but failed to receive any answer.. I allready wrote to you about my prpblems with implementing your code in my aplication.. Have you got anything in mind to help me solev that problem..{ May be I can compile your code seperately and include it in my aplication as ready executable code (is there a way to do this in dev-c++?)}

Anyhow I will be happy to receive at least any word from you:)
Message25. Re: Needed help using windows WMI and CMI classes in Dev-c++
#3466
Posted by: upCASE 2004-03-06 00:23:51
Hi!
I recived your mail but didn't have the time to answer it. Check back in about 2 hours, I'll send you a mail :)
As Treebeard said: "Don't be hasty" :)

upCASE
-----------------------------------
If it was hard to write, it should be hard to read!- Do. Or do not. There is no try!
Forum List • Thread List • Refresh • New Topic • Search • Previous • Next First 1 Last
掌柜推荐
 
 
 
 
 
 
 
 
 
 
 
 
© Fri 2024-3-29  Guidance Laboratory Inc.
Email:webmaster1g.yi.org Hits:0