Laden...

Forenbeiträge von LittleTester Ingesamt 158 Beiträge

18.05.2021 - 17:57 Uhr

OK. Dann bleibt mir erstmal nichts anderes übrig als das zu schlucken und bedanke mich soweit.

18.05.2021 - 17:49 Uhr

Ich habe gegoogelt, aber eben nichts gefunden. Wie du schon sagtest. Da scheint es irgendwie nichts vernünftiges zu geben, zumindest nicht per einfacher Abfrage.

Ich nutze Teamviewer für den direkten Support bei den Anwendern, aber nicht für administratibv Zwecke. Dafür baue ich eine VPN-Verbindung in die jeweilige Dienststelle auf und dann geht es mittels RDP weiter, bzw. Remote Desktop Manager Free.

Aber mal anders gefragt: Gibt es eine Möglichkeit in einem ersten Schritt abzufragen, auf welcher Netzwerkkarte ein Gateway angegeben ist und in einem zweiten Schritt dann diese Netzwerkkarte für die Abfrage der Lan-IP auszuwählen? Wenn ich in der Eingabeaufforderung "ipconfig /all" eingebe sehe ich zwar von den VMware-Adaptern, dass sie eine IP haben und auch ein DNS-Server, aber nur die echte Netzwerkkarte hat auch ein Standardgateway angegeben. Bei den virtuellen Adaptern müsste also der Wert "null" zurückgegeben werden während die echte Netzwerkkarte einen Wert zurück liefert => Treffer.

Ich weis aber nicht, wie das codetechnisch zu realisieren ist.

17.05.2021 - 23:26 Uhr

Ich habe mir ein Programm geschrieben, womit ich die MAC-Adresse und die IP-Adresse anzeigen lassen kann. In meinem System sind mehrere (virtuelle) Netzwerkkarten. Ich suche nun die Netzwerkkarte, die mit dem Internet verbunden ist. Ich könnte die Abfrage jetzt für mein System konkretisieren, aber das Tool soll für die Arbeit sein. (Gemeinnützig, wenn das für wen einen Unterschied macht.)

Also muss es entsprechend dynamisch gehalten werden. Zur Abfrage benutze ich
Win32_NetworkAdapterConfiguration. Denkbar wäre abzufragen, ob DHCPEnabled ist, aber bei den Rechnern auf der Arbeit habe ich allen Rechnern eine feste IP zugewiesen, damit ich da ohne Probleme per Fernzugriff drauf komme. Domäne-Server gibt es nur an zwei von ~12 Standorten. Die anderen sind Arbeitsgruppen. Die Abfrage nach FullDNSRegistrationEnabled fällt also auch weg. Leider gibt es keine Abfrage, ob der Standardgateway einen Wert zurück liefert. Das wäre im Grunde das was ich brauche.

Momentan sieht die Abfrage so aus:


searcher = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration where IPEnabled = 'TRUE'");

Jemand eine Idee?

17.05.2021 - 19:32 Uhr

Danke dannoe für diese superschnelle Antwort.

Was ich aber nicht verstehe (und gerne verstehen würde): Warum funktioniert die Abfrage nicht analog dazu wie bei Win32_LogicalDisk oder anderen WMI-Abfragen in C#? Das macht mich echt fertig.

Was ist dieses "ManagementScope" eigentlich und worin besteht der Unterschied zu "ManagementObjectSearcher"?

17.05.2021 - 19:06 Uhr

Hallo Community,

ich verzweifele gerade an der Aufgabe zu ermitteln ob die Windows-Partition eine SSD oder HDD ist.
Mit Win32_LogicalDisk ist das wohl leider nicht zu machen. Es braucht MSFT_PhysicalDisk und das scheint irgendwie komplizierter zu sein. Ich muss den Namespace Root\Microsoft\Windows\Storage einbinden. Aber wie mache ich das? Mein Code sieht aktuell so aus:


            // SSD oder HDD ermittteln
            try
            {
                searcher = new ManagementObjectSearcher("SELECT * FROM MSFT_PhysicalDisk");
                managementObjectCollection = searcher.Get();
                managementObject = managementObjectCollection.OfType<ManagementObject>().FirstOrDefault();

                foreach (ManagementObject obj in searcher.Get())
                    systemSsdOrHdd = obj["MediaType"].ToString();
            } catch (Exception ex) {
                MessageBox.Show(ex.Message);
            }

Momentan bekomme ich den Fehler: Ungültige Klasse

Könnt ihr mir bitte helfen? Lässt sich der Namespace auch ohne Code einbinden?

24.09.2019 - 00:32 Uhr

Danke für deine Antwort. Also wenn ich die Registry benutze kommt sowas bei raus, wie auf dem angehängten Bild. Das ist nicht richtig. Es fehlen Programme und einige sind doppelt aufgeführt.
Auch auf dem Bild zu sehen ist ein Teil-Screenshot aus meiner Systemsteuerung.

24.09.2019 - 00:13 Uhr

Da wird nur auf den "Trick" mit der Registry verwiesen.

Edit: Achso. WMI scheint hier auch nicht Mittel der Wahl zu sein. Wenn ich es mit "Select * from Win32_Product" versuche dauert der Programmstart sehr lange und die Auflistung sieht dann auch nicht so aus wie gewünscht (z.T. fehlen Programme, andere werden doppelt gezeigt.

23.09.2019 - 23:42 Uhr

Ich suche eine Möglichkeit installierte Software aufzulisten, so wie Sie unter "Einstellungen" -> "Apps" bzw. "Systemsteuerung" -> "Programme und Features" aufgeführt wird.

Das es eine "ordentliche" Lösung geben muss zeigt beispielsweise der CCleaner, der ja ebenfalls die Installierte Software auflistet, aber ich finde einfach keine ordentliche Lösung.

Der "Trick" mit der Registry (Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall) führt zu unsauberen Ergebnissen. Das Ergebnis sollte dann so aussehen:

Danke schonmal fürs Lesen.