ewertheimer
Messages postés161Date d'inscriptiondimanche 16 janvier 2005StatutMembreDernière intervention26 janvier 2009
-
16 nov. 2005 à 20:25
cs_neko
Messages postés135Date d'inscriptionjeudi 14 août 2003StatutMembreDernière intervention12 octobre 2006
-
18 nov. 2005 à 15:13
voici mon code:
var
texte : string;
Line, FileName : String;
i, FileSize : integer;
Fs : TFileStream;
begin
with AThread.Connection do
try
texte := ReadLn();
ShowMessage(texte);
except
ShowMessage ('deconnection');
end;
with AThread.Connection do
try
Line := ReadLn(); //Attends une commande de la forme TRANS suivi du nom de fichier
i := Pos(' ',Line);
if (i>0) and (LowerCase(Copy(Line,1,Pred(i)))='trans') then
begin
FileName := IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName))
+ Copy(Line,Succ(i),Length(Line)); //Copier nom de fichier
Fs := TFileStream.Create(FileName,fmCreate); //Créer le flux
try
try
FileSize := ReadInteger(); //Lire la taille
ReadStream(Fs,FileSize,False); //Lire le flux
WriteLn('OK'); //Signaler succès
except
WriteLn('ERR'); //Signaler une erreur
end;
finally
FreeAndNil(Fs); //Libérer le flux dans tous les cas
ShowMessage('terminer');
end;
end
else
WriteLn('ERR'); //Commande incomprise
finally
ShowMessage ('fichier reçu ')
end;
end;
l'envoie du fluxx et la breception fonctionne bien mais le probleme c'est que j'aimerais bien enregistrer le flux avec un TSaveDialog avant de le liberer.
Merci d'avance de vos reponses
cs_neko
Messages postés135Date d'inscriptionjeudi 14 août 2003StatutMembreDernière intervention12 octobre 20061 18 nov. 2005 à 09:17
Ton Filestream est déjà enregistré dans un fichier ( dans le repertoire courrant avec le nom de fichier transmit en début )
Reste qu'a le renommer/bouger
var SHFileOpStruct : TSHFileOpStruct;
begin
FillChar(SHFileOpStruct, SizeOf(SHFileOpStruct),0);
with SHFileOpStruct do begin
wFunc := FO_MOVE;
pFrom := PChar(SourceFile+#0);
pTo := PChar(DestFile+#0);
fFlags := FOF_NOCONFIRMATION or FOF_SILENT;
end;
ShFileOperation(SHFileOpStruct);
end;
cs_neko
Messages postés135Date d'inscriptionjeudi 14 août 2003StatutMembreDernière intervention12 octobre 20061 18 nov. 2005 à 15:13
Faut que t'essaye de chercher un peu quand même...
il faut que tu adapte le code que je t'ai donné
là tout est écrit dans l'aide SDK Windows. SourceFile c'est une chaine ( string ) avec ton nom de fichier source ( donc FileName pour toi ) et DestFile le nom du fichier Voulu. Je repondrais plus aux questions sur ce code, sauf choses complexes...