Posted by mimmo on April 10, 2006 Help add progressBar for Upload file procedure TFiles.ButtonClick(Sender: TObject); var dwFileLen: dword; CommandFrame: TCommandFrame; ReplyStream: TMemoryStream; Open: TOpenDialog; FileStream: TMemoryStream; FileName: string; FilePath: string; begin if not SocketConnected then Exit; Open := TOpenDialog.Create(nil); Open.Title := 'Select file to upload'; Open.DefaultExt := '*.*'; SetLength(FilePath, MAX_PATH); GetCurrentDirectory(MAX_PATH, @FilePath[1]); Open.InitialDir := FilePath; if not Open.Execute then Exit; SetCurrentDirectory(pchar(ExtractFilePath(Open.FileName))); ComboBox1.Enabled := False; Downloading := True; FileStream := TMemoryStream.Create; FileStream.LoadFromFile(Open.FileName); FileName := CurrentDirectory + ExtractFileName(Open.FileName); dwFileLen := Length(FileName); CommandFrame.Len := SizeOf(dword) + dwFileLen + FileStream.Size; CommandFrame.Command := F_UPLOAD; CommandFrame.Id := FRAME_ID; ReplyStream := TMemoryStream.Create; ReplyStream.WriteBuffer(CommandFrame, SizeOf(TCommandFrame)); ReplyStream.WriteBuffer(dwFileLen, SizeOf(dword)); ReplyStream.WriteBuffer(pointer(FileName)^, dwFileLen); ReplyStream.CopyFrom(FileStream, 0); FileStream.Free; Main.SendStream(DataSocket, ReplyStream); end; Related Articles and Replies
|