PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile (précédentes versions) → SoketLit. Gestion du temps d'attente dépassé. blocage appli
SoketLit. Gestion du temps d'attente dépassé. blocage appli
Débuté par Aurélien (ACEAN), 16 jan. 2015 10:54 - 1 réponse
Posté le 16 janvier 2015 - 10:54
Bonjour a tous,

Avec Windev Mobile, j'essai de développer une appli android communiquant avec des appareils Modbus sur un module Bluetooth.
Pas de soucis de communication. je réussi bien a lire les appreils au adresses que je veux.

Par contre la je veux tester chaque adresse Modbus pour faire une liste des appareils présent. Et quand un appreil n'est pas présent sur une adresse modbus, mon application bloque (temps d'attente du socketLit dépassé...)

Voici le code

I est un entier
J est un entier
Nbrmot est une chaîne ANSI
Adrcpt est une chaîne ANSI
Adrlect est une chaîne ANSI
Chainerecue est une chaîne ANSI
AdressCompt est un tableau de chaînes ANSI
VariableRAZ(AdressCompt)
J=0

Sablier(Vrai)

POUR I = 1 A 5 // Adresses Modbus testées de 1 à 5 (par la suite jusqu'a 255)
Adrcpt = NumériqueVersChaîne(I)

Adrlect = "0000"
Nbrmot = "1"
SocketEcrit("ConnectEnCours",RequetesModbus(Adrcpt,Adrlect,Nbrmot)) // Ecriture OK
Chainerecue=""
ThreadPause(30)

Chainerecue=SocketLit("ConnectEnCours",Faux,500)
SI Chainerecue <>"" ALORS
Ajoute(AdressCompt,I)
SINON
Info("pas de compteur à l'adresse "+I)
FIN
J++

FIN

Sablier(Faux)
Info(AdressCompt[1],AdressCompt[1])



Merci de votre retour!

Bien à vous
Posté le 23 janvier 2015 - 11:29
Bonjour,

Personne ne peut m'aider?