[Delphi] Comment créer une procedure qui renvoit un résultat ?

Comment créer une procedure qui renvoit un résultat ? [Delphi] - Delphi/Pascal - Programmation

Marsh Posté le 10-05-2002 à 14:40:19    

quelqu'un peut m'aider please ?
 
j'ai besoin de faire une procedure qui vérifie si je suis connecté à Internet.
il faut que cette procedure me renvoit un boolean par exple.
 
comme ca je peux m'en servir ailleurs :
 
if Internet = 1 then .....
else...

Reply

Marsh Posté le 10-05-2002 à 14:40:19   

Reply

Marsh Posté le 10-05-2002 à 14:41:08    

He bhe :/
 
function Internet: Boolean;
begin
  Result := True;
end;
 
prochaine fois: [:f1key]

 

[jfdsdjhfuetppo]--Message édité par antp le 10-05-2002 à 14:42:01--[/jfdsdjhfuetppo]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 10-05-2002 à 15:15:23    

mais ca marche pas ca :(
désolé mais mon niveau est faible
 
 
function InternetConnected: Boolean;
begin
 if NMHTTP1.LocalIP = '127.0.0.1' then
 InternetOn := True;
 else
 InternetOn := False;
end;

 

Citation :

[Erreur] Unit1.pas(135): Identificateur non déclaré : 'NMHTTP1'

 

[jfdsdjhfuetppo]--Message édité par jeep05 le 10-05-2002 à 15:15:37--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 10-05-2002 à 15:22:37    

jeep05 a écrit a écrit :

mais ca marche pas ca :(
désolé mais mon niveau est faible
 
 
function InternetConnected: Boolean;
begin
 if NMHTTP1.LocalIP = '127.0.0.1' then
 InternetOn := True;
 else
 InternetOn := False;
end;

 

Citation :

[Erreur] Unit1.pas(135): Identificateur non déclaré : 'NMHTTP1'

 




 
bon deja quand tu fais une fonction ce qu'elle renvoit doit avoir le nom de la fonction, donc dans ton cas, il faut pas mettre interneton := mahcin mais bien internetconnected := true
de cette maniere tu pourras donc faire dans ton code principal : if internetconnected then blablabla
 
 
bref
quand a ton erreur, bah c simple, il ne connait pas l'objet NMHTTP1
donc comme je sais pas ce que c que cette objet je peux pas savoir non plus ;)
au passage si jamais c un composant que tu as mis sur ta feuille il faut le preciser, donc l'appeler par form1.nmhttp1
enfin remplace form1 par le nom de la feuille ou il se trouve
eh oui c de l'objet, y'a des appartenances :p

Reply

Marsh Posté le 10-05-2002 à 15:29:20    

:)  :)  :)  
merci beaucoup a toi :
 
function InternetConnected: Boolean;
begin
 if Form1.NMHTTP1.LocalIP <> '127.0.0.1' then
 InternetConnected := True
 else
 InternetConnected := False;
end;

 
je vais pouvoir continuer encore merci pour ton aide, claire et sympathique.
 
au passage : NMHTTP1 est un composant de la gamme FastNet.
pour internet, et http

 

[jfdsdjhfuetppo]--Message édité par jeep05 le 10-05-2002 à 16:13:32--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 10-05-2002 à 15:43:29    

1°) Faut pas faire nom_de_la_fonction := True, mais faire Result := True (c'est plus lisible et on change plus facilement le nom de la fonction, expérience perso)
2°) Fastnet c'est caca, faut utiliser Indy qui est une version nettement plus récente et OpenSource de FastNet
3°) Le fait que ce soit une fonction ne change rien par rapport à la procédure au niveau de ce qu'il connaît ou pas... Tu dois peutêtre faire un truc du genre function Form1.InternetConnected: Boolean;


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 10-05-2002 à 15:53:29    

antp a écrit a écrit :

1°) Faut pas faire nom_de_la_fonction := True, mais faire Result := True (c'est plus lisible et on change plus facilement le nom de la fonction, expérience perso)
2°) Fastnet c'est caca, faut utiliser Indy qui est une version nettement plus récente et OpenSource de FastNet
3°) Le fait que ce soit une fonction ne change rien par rapport à la procédure au niveau de ce qu'il connaît ou pas... Tu dois peutêtre faire un truc du genre function Form1.InternetConnected: Boolean;  




 
1/ ca c'est chacun qui voit je pense ;)  puis vu le truc que c'est ca me genera pas trop, mais je retiens.
2/ a mon niveau c'est suffisant
3/  :??:  
 
 :D

Reply

Marsh Posté le 10-05-2002 à 15:56:03    

Bhen je trouve dommage de commencer à utiliser Fastnet, c'est tout :/
Et pour le 3° je voulais dire que si tu avais créé une procédure au lieu d'une fonction il n'aurait pas non plus trouvé ton compo, vu que c'est une procédure/fonction hors de la form, et que le compo est sur la form.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 10-05-2002 à 16:13:39    

ok  :jap:

Reply

Marsh Posté le 10-05-2002 à 16:15:07    

pareil que pour antp concernant FastNet... c'est lent c'est buggé et c'est pas super clair a l'utilisation... autant bien commencé la prog. avec les bons outils !


---------------
www.alliancefrancophone.org ... Home is where the heart is
Reply

Marsh Posté le 10-05-2002 à 16:15:07   

Reply

Marsh Posté le 10-05-2002 à 16:21:32    

D'ailleurs voici le commentaire qu'avait fait Buitoni à propos de Fastnet il y a près de 2 mois :

Citation :


Allez, je raconte la petite histoire...
 
Y a qqs années, la societé qui fait FastNet a demandé a qqn de faire un paquet de composants en echange d'une rémunération et d'un pourcentage sur les ventes....
 
Après livraison, le mec attendais donc son premier virement, mais... rien... que dalle... Et malgrés les centaines de mails, de lettres et tout le bazar, il n'a jamais reçu le moindre centime pour son boulot...
 
Comme il était pas content, et que FastNet a reussi a negocier avec Borland pour que ce soit intégré dans Delphi, le mec a décidé de tout publier et de faire une version open source, pour couper l'herbe sous le pied de ces connards... Voila donc pourquoi les débuts d'Indy ca ressemblait fort à FastNet.
 
Et depuis que Borland sait ca, ils ont foutu Indy dans delphi, et déconseille d'utiliser FastNet, ils l'ont foutu pour compatibility only, ont viré 2-3 morceaux déjà et ca va disparaitre dans l'oubli bientôt.
 
Voila pour la petite histoire, vire ca, utilise Indy (tu devras pas changer beaucoup), et vive l'open source ;)


 
( le topic c'était celui-ci : http://forum.hardware.fr/forum2.php3?post=16719&cat=10 )

 

[jfdsdjhfuetppo]--Message édité par antp le 10-05-2002 à 16:21:38--[/jfdsdjhfuetppo]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 10-05-2002 à 16:27:32    

JWhy a écrit a écrit :

pareil que pour antp concernant FastNet... c'est lent c'est buggé et c'est pas super clair a l'utilisation... autant bien commencé la prog. avec les bons outils !  




ok ok ok  :D  
 
mais c'est juste pour le HTTP.
apres je fais avec Socket.

Reply

Marsh Posté le 10-05-2002 à 16:28:50    

antp a écrit a écrit :

D'ailleurs voici le commentaire qu'avait fait Buitoni à propos de Fastnet il y a près de 2 mois :

Citation :


Allez, je raconte la petite histoire...
 
Y a qqs années, la societé qui fait FastNet a demandé a qqn de faire un paquet de composants en echange d'une rémunération et d'un pourcentage sur les ventes....
 
Après livraison, le mec attendais donc son premier virement, mais... rien... que dalle... Et malgrés les centaines de mails, de lettres et tout le bazar, il n'a jamais reçu le moindre centime pour son boulot...
 
Comme il était pas content, et que FastNet a reussi a negocier avec Borland pour que ce soit intégré dans Delphi, le mec a décidé de tout publier et de faire une version open source, pour couper l'herbe sous le pied de ces connards... Voila donc pourquoi les débuts d'Indy ca ressemblait fort à FastNet.
 
Et depuis que Borland sait ca, ils ont foutu Indy dans delphi, et déconseille d'utiliser FastNet, ils l'ont foutu pour compatibility only, ont viré 2-3 morceaux déjà et ca va disparaitre dans l'oubli bientôt.
 
Voila pour la petite histoire, vire ca, utilise Indy (tu devras pas changer beaucoup), et vive l'open source ;)


 
( le topic c'était celui-ci : http://forum.hardware.fr/forum2.php3?post=16719&cat=10 )  
 




ah je comprend mieux maintenant.
bon je vais aller voir Indy
et tu as raison, vive l'open source  :benetton:
 
par contre je veux bien connaitre l'équivalent de :
 
NMHTTP1.LocalIP
 
on dirait que avec ca ca marche : iDHTTP1.Host

 

[jfdsdjhfuetppo]--Message édité par jeep05 le 10-05-2002 à 16:33:02--[/jfdsdjhfuetppo]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed