0 / 0 / 0
Регистрация: 29.06.2010
Сообщений: 3
1

Копирование файла по локальной сети

01.07.2010, 04:39. Показов 3191. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, первый раз попробовал написать программу, подскажите как доделать в ней следующее:

чтобы при нажатии на copy программа пропускала пустые значения в edit, а так копирование происходит и соотв выдает ошибку такое количество раз сколько осталось пустых edit.
И еще как можно сделать чтобы при exit введенные значения в edit запоминались и оставались при след запуске программы

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
unit copy;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ShellApi, StdCtrls;
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    OpenDialog1: TOpenDialog;
    Button2: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Edit10: TEdit;
    Edit11: TEdit;
    Edit12: TEdit;
    Edit13: TEdit;
    Edit14: TEdit;
    Edit15: TEdit;
    Button3: TButton;
    Button4: TButton;
    dir: TEdit;
 
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
 
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button2Click(Sender: TObject);
var OpenDialog : TOpenDialog;
 
begin OpenDialog := TOpenDialog.Create(Self);
 
{опции...}
 
if OpenDialog1.Execute then
label1.Caption := OpenDialog1.FileName;
end;
 
function WindowsCopyFile(FromFile, ToDir : string) : boolean;
var F : TShFileOpStruct;
begin
  F.Wnd := 0; F.wFunc := FO_COPY;
  FromFile:=FromFile+#0; F.pFrom:=pchar(FromFile);
  ToDir:=ToDir+#0; F.pTo:=pchar(ToDir);
  F.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
  result:=ShFileOperation(F) = 0;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
 
begin
{------------------------}
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit1.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit2.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit3.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit4.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit5.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit6.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit7.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit8.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit9.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit10.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit11.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit12.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit13.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit14.text + dir.Text);
      WindowsCopyFile(OpenDialog1.FileName, '\\' + edit15.text + dir.Text);
{------------------------}      
      
 
end;
 
 
procedure TForm1.Button3Click(Sender: TObject);
begin
 edit1.Text:='';
 edit2.Text:='';
 edit3.Text:='';
 edit4.Text:='';
 edit5.Text:='';
 edit6.Text:='';
 edit7.Text:='';
 edit8.Text:='';
 edit9.Text:='';
 edit10.Text:='';
 edit11.Text:='';
 edit12.Text:='';
 edit13.Text:='';
 edit14.Text:='';
 edit15.Text:='';
end;
 
procedure TForm1.Button4Click(Sender: TObject);
begin
close;
end;
 
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.07.2010, 04:39
Ответы с готовыми решениями:

Копирование в локальной сети
В локальной сети через wi fi файлы копируются со скоростью 3 Мбайт/сек? Это нормально?

медленное копирование по локальной сети
Есть 2 компа под Win 8.1 update 3. Связаны через роутер-свич. Интегрированые сетевые карты...

Передача файла в локальной сети
Помогите пожалуйста с примером. Задача: передать файл от клиентов серверу в локальной сети. Есть 3...

Передача файла по локальной сети
Здравствуйте! Возникла необходимость передать файл на определенную машину в локальной сети. Сражу...

3
13 / 12 / 3
Регистрация: 19.09.2009
Сообщений: 179
01.07.2010, 08:14 2
Для сохранения настроек можно использовать IniFile, а для пустых Edit

Delphi
1
2
IF edit1.Text<>'' then
//нужное действие
0
0 / 0 / 0
Регистрация: 29.06.2010
Сообщений: 3
01.07.2010, 17:24  [ТС] 3
Цитата Сообщение от Xaker Посмотреть сообщение
Для сохранения настроек можно использовать IniFile, а для пустых Edit

Delphi
1
2
IF edit1.Text<>'' then
//нужное действие
а какое продолжение условия?
изначально пробовал вот так:

Delphi
1
2
3
4
5
if edit1.Text<>'' then
WindowsCopyFile(OpenDialog1.FileName, '\\' + edit1.text + dir.Text)
else
if edit2.Text<>'' then
WindowsCopyFile(OpenDialog1.FileName, '\\' + edit2.text + dir.Text)

тогда файл копируется только на первый вбитый в edit адрес, условие на этом останавливается...

наверное надо как-нибудь по другому?

Добавлено через 35 минут
разобрался, нужно без else.
Спасибо за ответ теперь буду мучить inifile
0
0 / 0 / 0
Регистрация: 29.06.2010
Сообщений: 3
12.07.2010, 18:14  [ТС] 4
В продолжении темы..

при условии, если копирование проходит, то label принимает текст OK, а как сделать, чтобы label принимал значение false, если возникает ошибка при копировании (если адрес уже неактивный) ??
0
12.07.2010, 18:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.07.2010, 18:14
Помогаю со студенческими работами здесь

Передача файла по локальной сети
Господа вот такой вопрос! Нужно передавать файлы по сети! При чём файлы любого формата!...

Распространение файла по локальной сети
Подскажите, пожалуйста, у меня есть несколько компьютеров в локальной сети, мне нужно, чтобы батнки...

Передача файла по локальной сети с помощью сокетов
Как организовать передачу файла по локальной сети с помощью сокетов? Что нужно писать в программе...

Проверка наличия файла на сервере локальной сети.
Локальная сеть. Необходимо проверить наличие файла на сервере. Если запустить штатным способом, и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru