Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

'ipconfig.exe'-output auslesen und in einem string speichern

Empfohlene Antworten

Veröffentlicht

Moinsen @all,

ich muss für die Arbeit einen Konsolenanwendung schreiben. Hauptbestandteil ist die MAC-Adresse auszulesen und sie in einem String speichern (dient später zur Vergleichzwecke). Ich möchte den 'ipconfig /all'- Output auslesen, diesen in einem String speichern und dann den String vergleichen. Das Problem ist wie lese ich den Output und wie parse (durchsuche) ich den String.

Bin dankbar für jede Antwort!

Mfg,

foxxx

P.S.: ich nutze DEV-C++ und darf kein .NET - Framework nutzen oder MFC

Bearbeitet von foxxx

Thx,

jo ich weiss, dass das nicht die feine Art ist, aber bei den "Three Ways ..." kommen alle MAC#S raus. Auch die virtuellen. Da wir auf den Kisten auch VM-Ware laufen haben und noch so andere MAC's (wie Wlan und BT) eignet sich das Beispiel nich. Bei den Output kann ich bis zu nem bestimmten Punkt parsen und dann dort mir die Information holen mit nem festen String vergleichen und dann die Funktionen loslassen (automatisch).

Mfg,

foxxx

Ich wette irgendwie gibts da auch ne Möglichkeit herauszufinden ob die physikalisch oder virtuell ist. (Ich glaub die physikalischen werden auch bei ipconfig zu erst angezeigt und müssten demnach auch in den Funktionen zu erst angezeigt werden)

Wie auch immer, die andere (dreckige) Möglichkeit, die mir noch einfallen würde, wäre die Ausgabe von ipconfig in eine temporäre Datei umzuleiten und dort dann jeweils die benötigten MACs auslesen.

Danach natürlich die Datei wieder löschen.

hmm ...

geht das umletien nicht in einem string und denn dann iregendwie durchsuchen?

bzw wie leite den output in einer datei und wie tu ich die datei dann mit nem konstanten string vergleichen???:confused:

mfg,

foxxx

hmm ...

geht das umletien nicht in einem string und denn dann iregendwie durchsuchen?

bzw wie leite den output in einer datei und wie tu ich die datei dann mit nem konstanten string vergleichen???:confused:

mfg,

foxxx

Unter *nixen geht das ganz einfach mit einer Pipe. Unter Windows laut Wikipedia auch.

sorry war nicht zuhause bis heute. super vielen dank für die schnellen antworten. ich werde mich am we hinsetzen und testen. mal noch eine frage: wie kann ich eine datei(ihren inhalt) parsen und ein fragment aus deren inhalt extrahieren und an einem string übergeben?

mfg,

foxxx

wie sieht die datei aus? Was genau willst du auslesen?

hmm ...

geht das umletien nicht in einem string und denn dann iregendwie durchsuchen?

bzw wie leite den output in einer datei und wie tu ich die datei dann mit nem konstanten string vergleichen???:confused:

mfg,

foxxx

Ok, ich komm nit aus deiner Programmierecke, aber unter VB.NET wär es so:



        Dim oInfo As System.Diagnostics.ProcessStartInfo = New System.Diagnostics.ProcessStartInfo("ipconfig", "/all")

        oInfo.UseShellExecute = False

        oInfo.ErrorDialog = False

        oInfo.CreateNoWindow = True

        oInfo.RedirectStandardOutput = True


        Dim p As Process = System.Diagnostics.Process.Start(oInfo)

        Dim oReader As System.IO.StreamReader = p.StandardOutput

        RichTextBox1.Text = oReader.ReadToEnd()

        oReader.Close()


Dann wäre die gesamte Ausgabe der Shell in der Richtextbox, kein Fenster ploppt auf...

Vielleicht hilfts dir ja :D

Bearbeitet von SoL_Psycho

Hi,

wenn du den Inhalt einer Datei auslesen willst schau dir mal <fstream> an.

Die Referenz findest du hier.

  • 3 Wochen später...

thx @all!

ihr habt mir sehr geholfen. ich habe 'ipconfig /all' in einer datei umgeleitet und diese wiederrum in einem string geladen. dann hab ich sechs konstante variable erstellt und diese mit dem string verglichen. stand der inhalt einer konstanten variable in dem string, so werden bestimmte anweisungen erfüllt.

mfg und danke nochmal an alle,

foxxx

  • 2 Monate später...

du hättest auch die Datei in eine Listbox laden können und dann jede Zeile auf einen bestimmten SubString durchsuchen lassen ( zB. "physikalische Adresse") ....

achja .. die Listbox dann natürlich visible auf false setzen

getmac.exe hätte es vermutlich auch getan :)

s'Amstel

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.