Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi LAN IP Adresse per Programm zuweisen (https://www.delphipraxis.net/1033-lan-ip-adresse-per-programm-zuweisen.html)

Dr.Kralle 9. Okt 2002 21:17


LAN IP Adresse per Programm zuweisen
 
Aalso wenn auf button 1 geklickt wird soll der rechner meinetwegen die IP 192.168.0.1 und Subnetzmask 255.255.255.0 erhalten ist das möglich ( bei windows 98 oder 2000 oder XP oder bei allen wenns geht danke!!

würde mich auch sehr über einen code freuen DANKE
*g*

sakura 9. Okt 2002 21:24

Die aktuelle Indy Komponenten Bibliothek (www.nevrona.com/Indy) enthält eine Komponente namens TIdIPWatch.

Code:
  Edit1.Text := IdIPWatch1.CurrentIP;
Subnet Mask weiss ich auch nicht auf Anhieb.

Chewie 9. Okt 2002 21:53

Ich denke, er wills umgekehrt. Dem Netzwerkadapter eine IP zuweisen. Bei 9x/ME (vielleicht auch NT oder 2000, ich weiß nicht) bedeutet das einen Neustart.

Dr.Kralle 9. Okt 2002 21:56

Ich wollte eigentlich die aktuelle IP ersetzen oder falls keine vorhanden ist soll halt komplett einen neue geschrieben werden aber ich will sie nciht auslesen
Trotzdem danke

Dr.Kralle 9. Okt 2002 21:57

Neustart ist auch egal! nehme ich alles in kauf

Daniel B 9. Okt 2002 22:04

Hi,

Ob man nur fürs setzen schon Neustarten muss, bin ich nciht so sicher, aber wenn damit gearbeitet werden muss dann brauchst Du es auf jedenfall.

Hier mal die sachen zum Neustarten:

Abmelden:
ExitWindowsEx(EWX_LOGOFF, 0);

Neustart:
ExitWindowsEx(EWX_REBOOT, 0);

Shutdown:
ExitWindowsEx(EWX_SHUTDOWN, 0);

Grüsse, Daniel :hi:

Luckie 9. Okt 2002 22:30

Er braucht es auch für Windows2000 und XP! Und der Neustart dürfte hier das geringste Prolem sein.

Daniel B 9. Okt 2002 22:39

Ich kann Lesen... :roll:

Luckie 9. Okt 2002 22:57

Eben und da werden deine Runterfahr und Neustart Lösungen nicht funktionieren, da du dir unter Win2000 erst die nötigen Rechte holen mußt.

Da müßte eigentlich auch schon ein FAQ-Eintrag zu existieren.

Daniel B 9. Okt 2002 22:59

Warum schreibst Du sie dann nicht hin?

sakura 10. Okt 2002 08:44

erst einmal sorry, dass ich wieder mal voll daneben gehauen habe, aber es ich wohl nach drei stunden training gestern abend bereits zu groggy, um noch ordentlich zu lesen.

Suche mal bei http://msdn.microsoft.com nach der IADsComputer Schnittstelle. Vielleicht hilft die ja weiter.

Alexander 10. Okt 2002 08:51

also ich denke du die NT-Schiene muss nicht neugestartet werden, falls doch nutze das:
Code:
function MyExitWindows(RebootParam: Longword): Boolean;
var
  TTokenHd: THandle;
  TTokenPvg: TTokenPrivileges;
  cbtpPrevious: DWORD;
  rTTokenPvg: TTokenPrivileges;
  pcbtpPreviousRequired: DWORD;
  tpResult: Boolean;
const
  SE_SHUTDOWN_NAME = 'SeShutdownPrivilege';
begin
  if Win32Platform = VER_PLATFORM_WIN32_NT then
  begin
    tpResult := OpenProcessToken(GetCurrentProcess(),
      TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
      TTokenHd);
    if tpResult then
    begin
      tpResult := LookupPrivilegeValue(nil,
                                       SE_SHUTDOWN_NAME,
                                       TTokenPvg.Privileges[0].Luid);
      TTokenPvg.PrivilegeCount := 1;
      TTokenPvg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
      cbtpPrevious := SizeOf(rTTokenPvg);
      pcbtpPreviousRequired := 0;
      if tpResult then
        Windows.AdjustTokenPrivileges(TTokenHd,
                                      False,
                                      TTokenPvg,
                                      cbtpPrevious,
                                      rTTokenPvg,
                                      pcbtpPreviousRequired);
    end;
  end;
  Result := ExitWindowsEx(RebootParam, 0);
end;

// Beispiel zum Reboot von Windows:

procedure TForm1.Button1Click(Sender: TObject);
begin
  MyExitWindows(EWX_REBOOT or EWX_FORCE);
end;

thebaer 31. Okt 2002 20:33

Gehe ich recht in der Annahme, dass die Indy-Komponenten, diesewelche
sind, die bereits bei Delphi 6.0 Enterprise enthalten sind??? :coder:

Und: Unter Windows XP Professional muss der PC beim umstellen von IP nicht neu gebootet werden. 8)

Lässt sich mit den Komponenten auch die IP ändern?

sakura 4. Nov 2002 12:45

Zitat:

Zitat von thebaer
Gehe ich recht in der Annahme, dass die Indy-Komponenten, diesewelche
sind, die bereits bei Delphi 6.0 Enterprise enthalten sind???

Ja.

Zitat:

Zitat von thebaer
Und: Unter Windows XP Professional muss der PC beim umstellen von IP nicht neu gebootet werden.

Richtig.

Zitat:

Zitat von thebaer
Lässt sich mit den Komponenten auch die IP ändern?

Soweit ich weiss, nein!

Sorry für die späte Antwort, war am Wochenende weg.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz