Functions > Network >


UDPBind

Crée un socket lié à une connexion entrante.

UDPBind ( IPAddr, port )

Paramètres

IPAddr L'adresse du protocole internet (IPv4) tel que "192.162.1.1".
port Port sur lequel le socket créé sera connecté.

Valeur de retour

Succès: Retourne le tableau:
    [1] le socket réel
    [2] l'adresse IP spécifiée
    [3] le port.
Nous aurons besoin de ces informations pour des appels ultérieurs à la fonction UDPRecv(), à laquelle nous passons cette structure/tableau de socket.
Échec: Définit @error <> 0
@error: 1 - 'IPAddr' est incorrect.
2 - 'port' est incorrect.
Valeur retournée par l'API Windows WSAGetError (Consultez MSDN).

En relation

UDPCloseSocket, UDPOpen, UDPRecv, UDPSend

Exemple

#include <MsgBoxConstants.au3>

Example()

Func Example()
    UDPStartup() ; Démarre le service UDP.

    ; Enregistre OnAutoItExit qui sera appelée lorsque le script se fermera.
    OnAutoItExitRegister("OnAutoItExit")

    ; Assigne des variables locales avec l'adresse IP et le port.
    Local $sIPAddress = "127.0.0.1" ; Cette adresse IP ne fonctionne que pour les tests sur votre propre ordinateur.
    Local $iPort = 65532 ; Port utilisé pour la connexion.

    ; Assigne une variable locale avec le socket et se connecte à l'adresse IP et au port spécifiés.
    Local $aSocket = UDPBind($sIPAddress, $iPort)

    ; Si une erreur s'est produite, affiche le code d'erreur et retourne Faux.
    If @error Then
        ; Quelqu'un est probablement déjà connecté sur cette adresse IP et ce port (script déjà en cours d'exécution?).
        Local $iError = @error
        MsgBox(BitOR($MB_SYSTEMMODAL, $MB_ICONHAND), "", "Liaison impossible, code d'erreur: " & $iError)
        Return False
    Else
        MsgBox($MB_SYSTEMMODAL, "", "Liaison réussie.")
    EndIf

    ; Ferme le socket d'écoute pour permettre une connexion ultérieure.
    ; Tant que le socket n'est pas fermé, aucun autre programme ne peut se connecter à la même adresse IP et à ce port.
    UDPCloseSocket($aSocket)
EndFunc   ;==>Example

Func OnAutoItExit()
    UDPShutdown() ; Ferme le service UDP.
EndFunc   ;==>OnAutoItExit