Incrementation d'IP, comment faire ?

cs_manu00 Messages postés 93 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 25 octobre 2006 - 10 mars 2004 à 15:42
cs_manu00 Messages postés 93 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 25 octobre 2006 - 14 mars 2004 à 11:04
Bonjour,

J'ai une petite question...
J'aimerai a partir d'une IP de depart et une d'arrivée
ex:
ip de depart: 213.3.4.5
ip d'arrivée: 215.4.5.7

je voudrais que cela me sorte la liste totale des IPs (sans le dernier groupe...) (A.B.C.D => A.B.C._)
C'est a dire:

213.3.4.0
213.3.5.0
....
213.3.254.0
213.4.0.0
213.4.0.1
....
etc etc
jusqu'a mon ip d'arrivée...

Donc la grande question est...
Comment faire pour incrementer des adresses IPs ?

(Je me tord le cervo sur un algo mais pas moyen de trouver)

Merciiiiiiiiiiiiii

Manu

3 réponses

japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
11 mars 2004 à 15:52
Pas clair, le problème...

"ip de depart: 213.3.4.5
ip d'arrivée: 215.4.5.7"
et
"213.4.0.0
213.4.0.1"
et
"Je voudrais que cela me sorte la liste totale des IPs (sans le dernier groupe...) (A.B.C.D => A.B.C._)"
pffffffff.........

On l'incrémente, ou pas, le dernier groupe ??????
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
13 mars 2004 à 20:09
hello
bon je viens de te faire ton truc là :D
c juste une histoire de boucle (4 pour etre precis)
voila la procedure de mon bouton :
(ps : j'ai posé 1 listbox nommée "lbIPs", puis un speedbutton puis 8 edit nommés "editIP11, editIP12, editIP13, editIP14, editIP21, editIP22, editIP23, editIP24", IP11 veut dire 1ere IP morceau 1 (xxx.___.___.___))

procedure TForm1.SpeedButton1Click(Sender: TObject);
var
i1,i2,i3,i4: integer;
begin
lbIPs.clear;
Application.ProcessMessages;
for i1:=strtoint(editIP11.text) to strtoint(editIP21.text) do
begin
for i2:=strtoint(editIP12.text) to strtoint(editIP22.text) do
begin
for i3:=strtoint(editIP13.text) to strtoint(editIP23.text) do
begin
for i4:=strtoint(editIP14.text) to strtoint(editIP24.text) do
begin
lbIPs.Items.Add(IntToStr(i1)+'.'+IntToStr(i2)+'.'+IntToStr(i3)+'.'+IntToStr(i4));
end;
end;
end;
end;
application.RestoreTopMosts;
end;

a bientot :)
0
cs_manu00 Messages postés 93 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 25 octobre 2006
14 mars 2004 à 11:04
Franchement, merci Julio, t'as trop assuré :-)
Je pense qu'en plus ca va servir a bcp de monde...

:-)

Merci
0
Rejoignez-nous