Bonjour,
J’essaie d'écrire un petit programme avec accès WiFi. Pour cela j'ai copié un programme dont voici un élément :
Et j'obtiens les erreurs suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 procedure TForm1.WSocket1DataAvailable(Sender: TObject; ErrCode: Word); var Buffer : array [0..1023] of Ansichar; Len : Integer; Src : sockaddr_in; SrcLen : Integer; Lbuffer : Integer; temp : string; begin SrcLen := SizeOf(TSockAddrIn); Len := WSocket1.ReceiveFrom(@Buffer,SizeOf(Buffer) , Src , SrcLen); if Len >= 0 then begin ...
[Erreur] FOCUSS.pas(96): Les types des paramètres VAR originaux et formels doivent être identiques
[Erreur fatale] FOCUSSP.dpr(5): Impossible de compiler l'unité utilisée 'FOCUSS.pas'
Si je met des parenthèses à Src : Len := WSocket1.ReceiveFrom(@Buffer,SizeOf(Buffer) , (Src) , SrcLen);
J'ai en plus le message suivant :
[Avertissement] FOCUSS.pas(96): Transtypage non protégé de 'sockaddr_in' en 'sockaddr_in'
qui me parait assez surprenant !
Avez-vous des explications ?
Merci d'avance.
Adelant
Partager