Page 1 sur 1

[..] Envoi d'image en tcp Erreur

Posté : sam. 20 févr. 2010 17:48
par manzarek
Bonjour,
Je fait un script qui permet de voir le bureau d'un autre ordinateur.
J'ai essayer de faire en sorte que le client prenne une screenshot et l'envoie en tcp au server qui reconstruit l'image et l'affiche mais le probleme c'est que cela ne marche pas l'image recue est tout le temps corrompue.

Voici le script
Server

Code : Tout sélectionner

TCPSend($subsocket,"singleremote")
$remotereponse=TCPRecv($subsocket,20000000)
FileOpen(@DesktopDir&"\remote\temp.jpg",18)
FileWrite(@DesktopDir&"\remote\temp.jpg",$remotereponse)
FileClose(@DesktopDir&"\remote\temp.jpg")
 
Client

Code : Tout sélectionner

    $action=TCPRecv($socket,2048)
    if $action="singleremote" Then
    $binimage=""
    $stringimage=""
    $ScreenName=(@DesktopDir&"\remote\screen.jpg")
    FileDelete($ScreenName)
    _ScreenCapture_SetJPGQuality(20)
    _ScreenCapture_Capture($ScreenName)
    $binimage=FileOpen($ScreenName,16)
    $stringimage=FileRead($binimage)
    FileClose($binimage)
    TCPSend($socket,$stringimage&":image")
    EndIf
 
Il fait bien la screenshot et essaye bien de l'envoyer mais le fichier image une fois envoyer et reconstruit est corrompu.

Comment cela ce fait il?
Merci d'avance

Re: [..] Envoi d'image en tcp Erreur

Posté : sam. 20 févr. 2010 17:54
par Tlem

Re: [..] Envoi d'image en tcp Erreur

Posté : sam. 20 févr. 2010 19:54
par manzarek
Ca fonctionne mais ca nous emprisonne dans une boucle while.

Moi je veut envoyer au serveur une instruction qui dit "envoie moi mon fichier"
Le serveur envoie et le client réceptionne puis le programme continue.
La on réceptionne en permanence.

Est il possible de le faire sans boucle?

Merci d'avance

Re: [..] Envoi d'image en tcp Erreur

Posté : sam. 20 févr. 2010 22:30
par Tlem
Il faut bien que le PC qui reçoit les données soit en attente de réception.
Il n'y à pas 36 façon de procéder. ;)
Vous pouvez aussi faire un script qui fait le traitement et un autre qui attend les données. ;)