Вверх ↑
Этот топик читают: Гость
Ответов: 29
Рейтинг: 0
#16: 2007-02-20 17:33:20 ЛС | профиль | цитата
Леонид писал(а):
Астрамак, не торопись
Paramon,
code_877


Всем спасибо. Разобрался. Конечный вид схемы получился такой:

Add(MainForm,8012465,21,105)
{
Left=20
Top=105
}
Add(FileTools,4406933,266,161)
{
link(onEnd,270886:doMessage,[])
link(FileName,7880095:Value,[])
}
Add(Message,270886,336,161)
{
Message="ОК"
Caption="ОК"
}
Add(Button,6535009,161,98)
{
Left=120
Top=100
Width=120
Height=30
Caption="Переместить файл"
Data=String(C:DOWNLOADSlinks.txt )
link(onClick,7880095:doValue,[])
}
Add(Memory,7880095,266,98)
{
link(onData,15288455:doPart,[])
}
Add(FormatStr,6182038,217,161)
{
Mask="%1\%2"
link(onFString,4406933:doMove,[])
link(Str1,12198223:Value,[])
link(Str2,1426394:Value,[(230,147)(377,147)])
}
Add(Memory,12198223,217,56)
{
Default=String(f:\)
}
Add(FilePart,15288455,315,98)
{
NameWOExt=1
link(onName,1426394:doValue,[(359,111)(359,104)])
}
Add(Memory,1426394,371,98)
{
link(onData,6182038:doString,[(413,104)(413,145)(193,145)(193,167)])
}






[size=-2]------ Добавлено в 17:33
Только вот непонятно, почему происходит следующее: имеем 1 файл на диске С: , хотим переместить его на диск D:, первый раз переношу - все ОК, потом хочу переместить такой же файл с таким же именем и расширением, по такому же пути, но уже с другим размером и ничего не происходит, т.е. не могу заменить уже существующий файл.
Уже все вроде попробывал и нифига не получается. Остается только сразу удалять заменяемый файл, а затем ложить новый
карма: 0

0
Ответов: 8930
Рейтинг: 823
#17: 2007-02-20 18:51:42 ЛС | профиль | цитата
Paramon, а чего файл перемещать, ведь он уже существует - логично поступает FileTools
Значит логика должна быть иная:
1. проверить, есть-ли что переносить (точка doFileExsist);
2.1 если нет - остановиться;
2.2 если есть - удалить такой-же файл из места назначения
3. а вот теперь можно и перенести
карма: 19

0
Ответов: 3851
Рейтинг: 159
#18: 2007-02-21 08:31:23 ЛС | профиль | цитата
Да, проверка размера не помещает ..
карма: 0
начавший
0
Ответов: 29
Рейтинг: 0
#19: 2007-02-21 10:13:36 ЛС | профиль | цитата
Леонид писал(а):
Paramon, а чего файл перемещать, ведь он уже существует - логично поступает FileTools
Значит логика должна быть иная:
1. проверить, есть-ли что переносить (точка doFileExsist);
2.1 если нет - остановиться;
2.2 если есть - удалить такой-же файл из места назначения
3. а вот теперь можно и перенести


В том то и дело: допустим несколько раз в месяц одни и те же файлы, но с разным содержимым(размером) должны заменяться в определенной папке. FileTools поступает нелогично(может у меня только глючит, хотя пробывалось на разных машинах), логичнее было бы если б он действовал на подобие проводника винды: если файл существует просто заменять его, если нет перемещать.
карма: 0

0
Ответов: 9906
Рейтинг: 351
#20: 2007-02-21 12:17:37 ЛС | профиль | цитата
Вообще-то это не FileTools поступает логично или нет
Это так делает в данном случае WinApi по имени MoveFile
Есть повод сообщить Биллу, что он дурак
карма: 9

0
Ответов: 3514
Рейтинг: 184
#21: 2007-02-21 21:04:36 ЛС | профиль | цитата
..прям Билл сам сидел и писал всю винду..
карма: 0
0
Ответов: 278
Рейтинг: 4
#22: 2007-02-21 23:06:37 ЛС | профиль | цитата
Add(FileTools,4406933,266,238)
{
link(onEnd,6637602:doCase,[])
link(FileName,7880095:Value,[])
link(NewFileName,9119800:Var2,[])
}
Add(GetDataEx,9119800,266,210)
{
link(Data,10912194:Value,[])
}
Add(Button,6535009,161,77)
{
Left=120
Top=100
Width=120
Height=30
Caption="Переместить файл"
Data=String(C:DOWNLOADSlinks.txt )
link(onClick,7880095:doValue,[])
}
Add(Memory,7880095,266,77)
{
link(onData,15288455:doPart,[])
}
Add(FormatStr,6182038,161,161)
{
DataCount=1
Mask="F:DOWNLOADS\%1"
link(onFString,10912194:doValue,[])
link(Str1,1426394:Value,[(167,146)(377,146)])
}
Add(Memory,1426394,371,77)
{
link(onData,6182038:doString,[(413,83)(413,124)(151,124)(151,167)])
}
Add(FilePart,15288455,315,77)
{
NameWOExt=1
link(onName,1426394:doValue,[(359,90)(359,83)])
}
Add(Memory,10912194,273,161)
{
link(onData,4406933:doFileExists,[(315,167)(315,205)(256,205)(256,265)])
}
Add(Case,6637602,315,238)
{
Value=Integer(1)
link(onNextCase,3338649:doWork1,[(361,244)(361,225)(144,225)])
link(onTrue,10485520:doEvent1,[])
}
Add(DoData,3382760,161,238)
{
link(onEventData,4406933:doMove,[])
link(Data,9119800:Var1,[(167,219)])
}
Add(Hub,10485520,371,245)
{
link(onEvent1,4406933:doDelete,[(420,251)(420,291)(250,291)(250,258)])
link(onEvent2,3338649:doWork3,[(414,258)(414,283)(144,283)])
}
Add(HubEx,3338649,140,231)
{
link(onEvent,3382760:doData,[])
}

Всё просто, больше разговоров
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
22
Сообщение
...
Прикрепленные файлы
(файлы не залиты)