-2
如何從兩個不同的位置僅通過一個TCP-服務器發送文件,我設法從只有一個位置發送文件。 此代碼從一個目錄發送...如何使用一臺TCP-Server從兩個不同位置發送文件?
procedure TForm1.Timer1Timer(Sender: TObject);
var
fs: TFileStream;
fn: string;
sr: TSearchRec;
I: integer;
begin
I := 0;
if FindFirst('C:/*.jpg', faAnyFile, sr) = 0 then
begin
with StringGrid1 do
begin
ListBox1.Items.Add('C:/' + sr.Name);
while FindNext(sr) = 0 do
begin
ListBox1.Items.Add('C:/' + sr.Name);
Inc(I);
if I = 7 then
Break;
end;
FindClose(sr);
idTCPClient1.Connect;
for fn in ListBox1.Items do
begin
fs := TFileStream.Create(fn, fmOpenRead or fmShareDenyWrite);
try
idTCPClient1.IOHandler.WriteLn(ExtractFileName(fn));
idTCPClient1.IOHandler.Write(fs, 0, True);
idUDPClient1.Send(lbLatitude.Text + ',' + lbLongitude.Text);
Finally
fs.Free;
end;
end;
end;
end;
end;
我不知道你在問什麼。您發佈的代碼有哪些具體問題? –
從1個目錄發送文件的代碼,我需要它從兩個不同的目錄發送文件? –
您正在發送基於您放入列表框中的8個項目的文件。如果這8個文件在同一個目錄中,那麼你只是故意從一個目錄發送文件。如果您希望它不同,請將項目放入不同目錄中的列表框中。你的代碼是將文件名放入列表框中,而你只是發送這些文件。 –