Seite 1 von 1

IP Adresse über Qt ändern

Verfasst: 5. August 2009 15:56
von 101
Hallo Zusammen,

hat jemand von euch es schon einmal hinbekommen via Qt die IP Adresse der Netzwerkverbindung zu ändern.

Diese Funktion soll es ja angeblich geben:

siehe:
http://doc.qtsoftware.com/4.5/qnetworka ... html#setIp

Bei mir funktioniert das Ganze aber nicht. Der Name der Adresse wird zwar geändert, das System bleibt aber hiervon unbeeindruckt.

Siehe auch Thread in diesem Forum:
http://www.qtforum.de/forum/viewtopic.p ... ight=netsh

Viele Grüße
101

Verfasst: 5. August 2009 16:38
von Christian81
Ich kann aus der Doku nicht herauslesen dass man damit die Netzwerkeinstellungen des System modifizieren kann. Das wäre auch verwunderlich da dies überall total unterschiedlich ist.

Verfasst: 5. August 2009 16:52
von AuE
Sets the IP address the QNetworkAddressEntry object contains to newIp.
Bezieht sich hierauf
The QNetworkAddressEntry class stores one IP address supported by a network interface, along with its associated netmask and broadcast address.

Verfasst: 6. August 2009 12:57
von 101
Ich frage mich nur, zu was diese Funktion gut sein soll? :roll:

Verfasst: 6. August 2009 20:15
von upsala
Wie willst du diese Klasse befüllen, wenn du keinen Zugriff auf die Variablen hast?

Verfasst: 7. August 2009 08:47
von 101
über

QNetworkInterface::addressEntries ()


http://doc.qtsoftware.com/4.5/qnetworkinterface.html

Verfasst: 7. August 2009 09:15
von Mani99
Dir ist schon klar, das du damit höchstens die netzwerkeinstellungen vom system auslesen, aber sicher nicht setzen kannst, oder?

Unter linux würde ich die datei "interfaces" bearbeit, wenn ich was verändern wollte!

Verfasst: 7. August 2009 09:53
von franzf
Und so ganz nebenbei: IP-Adresse eines Systems ändern obliegt dem Admin! Deshalb würde im Allgemeinen eine solche Möglichkeit in einer Gui-Bibliothek wie Qt recht wenig Sinn machen, da hier der Anwendungsbereich auf "normale" Anwendungen ausgelegt ist, und spezielle Systemverwaltungssachen dort nix zu suchen hätten.
Wäre ja auch echt problematisch, wenn jeder User XYZ mit nem einfachen Qt-Programm Systemeinstellungen ändern könnte! Das musst du schon selber erledigen...

Verfasst: 7. August 2009 10:27
von Mani99
[off-topic]
franzf hat geschrieben:Und so ganz nebenbei: IP-Adresse eines Systems ändern obliegt dem Admin! Deshalb würde im Allgemeinen eine solche Möglichkeit in einer Gui-Bibliothek wie Qt recht wenig Sinn machen, da hier der Anwendungsbereich auf "normale" Anwendungen ausgelegt ist, und spezielle Systemverwaltungssachen dort nix zu suchen hätten.
Wäre ja auch echt problematisch, wenn jeder User XYZ mit nem einfachen Qt-Programm Systemeinstellungen ändern könnte! Das musst du schon selber erledigen...
@franzf: Sorry, aber eigentlich gehts dich ja nichts an, ob das nur der admin machen darf oder nicht. Wenn er das machen möchte, sollten wir ihm so weit wie möglich helfen, ganz gleich ob er das darf oder nicht.

Was hat er davon wenn hundert mal erklärt und gesagt wird das das nur der admin machen sollte/darf, er das aber auch machen möchte und keine lösung/tips bekommt?

[/off-topic]

Verfasst: 7. August 2009 10:46
von franzf
Mani99 hat geschrieben:Was hat er davon wenn hundert mal erklärt und gesagt wird das das nur der admin machen sollte/darf, er das aber auch machen möchte und keine lösung/tips bekommt?
Es hat bisher noch niemand den Admin ins Spiel gebracht, denn wenn er als unbedarfter Std-Winler als Admin arbeitet spürt er im täglichen Betrieb keinen Unterschied...

Und dein Tip mit der Datei "interfaces" geht voll an den verschiedenen Distris vorbei ;)
Eine "interfaces" gibt es auf meinem Gentoo nicht. Ich mach das hier mit /etc/conf.d/net. Wenn linux dann schon ifconfig. Unter win glaub ich heißt das "ipconfig". Und das sind keine zu bearbeitenden Dateien sondern Programme.

Und mein Punkt war ja nicht der Admin, sondern dass Admin-Only-Klassen in einer Bibliothek wie Qt nix zu suchen haben...

Verfasst: 7. August 2009 12:28
von RHBaum
Ich frage mich nur, zu was diese Funktion gut sein soll?
In nem LAN die Adresse aendern und das ueber ne eigene eingabemaske macht imho ned viel Sinn, zumal die BS und deren Guis eh schon Einstellungsdialoge anbieten ....

Aber, Netzwerkkarte != LAN ....
Wir haben hier ne menge Hardware, die mit dem DesktopPC ueber ne autarke Ethernetverbindung kommunizieren.
Das heisst man connected die .... leider nur die wenigste HW unterstuetzt dhcp, sondern teilweisse werden sogar feste IP adresse vorgegeben, die die angeschlossene NWKarte haben muss (im privaten bereich, zum glueck). Erst dann kommt man ueber spezielle Treiber auf die HW drauf.
Das Protokoll ist auch kein reines TCP/IP ..... sondern irgendwas hausgebackenes, da die kommunikation ueber nen LAN definitiv nicht geht ! (keine ahnung warum das ding dann ne IP braucht)

wiederum einige Geraete bieten Treiber, in dem in deren einstellungen die IP von der NIC festlegen kann, unter anderen. identifiziert wird die Karte ueber die MAC, welche man von aussen ja nicht sieht.
Die IPs kann man ueber den Treiber definitiv umstellen ohne Admin-Rechte! ... lustig wenn man grad die Netzwerkkarte fuers LAN erwischt hat ^^ Der treiber hat allerdings auch keine MS Zertifizierung ^^

Also fuer einige dinge waer das schon ganz gut .... die IP mal schnell "einstellen" zu koennen. Aber nen allgemeingueltigen weg, und damit einen wo eine Qt Impl Sinn machen wuerd, sehe ich ned !
Posix schreibt paar tools vor, die man nutzen koennte (ifconfig), die winapi hat sicher auch methoden fuer (wenn man admin ist). Sollte man als QTler, der ja auch C und C++ koennen sollte, durchaus nutzen ...

Ciao ...

Verfasst: 7. August 2009 12:34
von RHBaum
Ich frage mich nur, zu was diese Funktion gut sein soll?
In nem LAN die Adresse aendern und das ueber ne eigene eingabemaske macht imho ned viel Sinn, zumal die BS und deren Guis eh schon Einstellungsdialoge anbieten ....

Aber, Netzwerkkarte != LAN ....
Wir haben hier ne menge Hardware, die mit dem DesktopPC ueber ne autarke Ethernetverbindung kommunizieren.
Das heisst man connected die .... leider nur die wenigste HW unterstuetzt dhcp, sondern gibt sogar feste IP adresse vor, die die angeschlossene NWKarte haben muss (im privaten bereich, zum glueck). erst dann kommt man ueber stezielle treiber auf die HW drauf.
Das protokoll ist auch kein TCP/IP .....

wiederum einige geraete bieten Treiber, in dem in deren einstellungen die IP von der NWKarte festlegen kann, unter anderen. identifiziert wird die Karte ueber die MAC, welche man von aussen ja nicht sieht.
Die IPs kann man ueber den Treiber definitiv umstellen ohne Admin-Rechte! ... lustig wenn man grad die Netzwerkkarte fuers LAN erwischt hat ^^ Der treiber hat allerdings auch keine MS zertifizierung ^^

Also fuer einige dinge waer das schon ganz gut .... die IP mal schnell "einstellen" zu koennen. Aber nen allgemeingueltigen weg, und damit einen wo eine Qt Impl Sinn machen wuerd, sehe ich ned !
Posix schreibt paar tools vor, die man nutzen koennte (ifconfig), die winapi hat sicher auch methoden fuer (wenn man admin ist). Sollte man als QTler, der ja auch C und C++ koennen sollte, durchaus nutzen ...

Ciao ...