Avatar billede ramad Praktikant
29. november 2005 - 09:20 Der er 6 kommentarer

Applikation der samler informationer om maskiner på et lokalnet.

Hejsan

Jeg står og skal opbygge en lille applikation, der kan samle informationer om andre computere på et lokalnetværk. Det som skal samles op er f.eks. følgende ting:

Genrelle informationer:
* Specifikationer
* Operativ system
* Memory
* Processor
* Genral Computer Informationer
* Local Disk

Hardware informationer:
* Local disks
* Display
* Video Card
* Netværkskort

Derudover skal der lokaliseres hvor SWAP filen er placeret.

Jeg ved godt at dette er en omfattende opgave, og det jeg søger er også mere efter et sted hvor jeg kan komme godt igang.

Det skal være en windows applikation der kan køres fra en hvilken som helst maskine på netværket og derfra forbinde sig til andre maskiner på netværket.
Avatar billede segato Nybegynder
29. november 2005 - 10:58 #1
Du skal anvende det der hedder wmi. Det er nogle gamle com objecter men det virker fint.

Se evt. http://www.csharphelp.com/archives2/archive334.html
Avatar billede jens87 Nybegynder
29. november 2005 - 12:14 #2
Avatar billede segato Nybegynder
29. november 2005 - 13:31 #3
Jens henter den ikke kun info på den maskine man er på? Eller kan den gå på netværk og hente info om andre maskiner?
Avatar billede ramad Praktikant
29. november 2005 - 14:19 #4
Jeg er gået igang med den guide der er på http://www.csharphelp.com/archives2/archive334.html, men jeg bliver ved med at få den samme fejl. Kan I se nogle fejl i denne stump kode, der er sakset fra min applikation?

private void btnHentInformationer_Click(object sender, System.EventArgs e)
        {
            string Server = this.txtComputer.Text;
            Server = "\\" + Server;

            ConnectionOptions oConn = new ConnectionOptions();           
            oConn.Username = this.txtBruger.Text;
            oConn.Password = this.txtAdgangsKode.Text;

            System.Management.ManagementScope oMs = new System.Management.ManagementScope(Server, oConn);
            System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery("select FreeSpace,Size,Name from Win32_LogicalDisk where DriveType=3");

            ManagementObjectSearcher oSearcher = new ManagementObjectSearcher(oMs,oQuery);
            ManagementObjectCollection oReturnCollection = oSearcher.Get(); 

            foreach( ManagementObject oReturn in oReturnCollection )
            {
                this.lblDisk1.Text = ("Name : " + oReturn["Name"].ToString());
                this.lblDisk2.Text = ("FreeSpace: " + oReturn["FreeSpace"].ToString());
                this.lblDisk3.Text = ("Size: " + oReturn["Size"].ToString());
            }
        }

Fejlen siger at navneområdet er ugyldigt!
Avatar billede ibleif Nybegynder
29. november 2005 - 20:10 #5
Du skal køre et program på alle de maskiner, du skal indsamle oplysninger om. Det er ikke noget maskinerne bare står og sender ud på netværket jo.

// Ibleif
Avatar billede segato Nybegynder
02. december 2005 - 10:04 #6
Nej det skal man ikke når man anvender wmi. Men fjelne ka nvære så mange ting. F.eks. domæne adgang, impersonation osv osv. Så det er lidt svært at vide hvad fejlen er! Står der ikke noget mer i den fejl?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester