Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
ВнизПустая переменная Найти похожие ветки
← →
F@T@L_Err0r © (2007-10-25 10:02) [0]Здравствуйте.Подкажите пожалуйста где ошибка.Парюсь уже два дня не могу понять почему переменная link после присваивания ей значения остается пустой?Вот код:
Procedure CopyFiles(S:String);
var F:TSearchRec;
Link,from:string;
begin
if FindFirst(s,faanyfile,f)=0 then
begin
while FindNext(f)=0 do
begin
link:=ExtractFilePath(f.Name);
if CopyFile(PChar(link),PChar(from),false) then ShowMessage("Copied")
else ShowMessage("Not Copy");
end;
← →
clickmaker © (2007-10-25 10:05) [1]а с чего бы в f.Name должен быть полный путь?
И как ты собирался копировать папку функцией CopyFile?
← →
F@T@L_Err0r © (2007-10-25 10:08) [2]А ето ваще пробный пример.а как можно получить полный путь для копирования из F,и как копировать папку?
← →
Ins © (2007-10-25 10:09) [3]Да у вас и связочка FindFirst-FindNext неправильная. Во-первых, пропускате первый найденный, а во вторых - забываете про FindClose
← →
stone © (2007-10-25 10:09) [4]ошибок вагон
1. Как ты думаешь, какие файлы будут при faanyfile?
2. if FindFirst(s,faanyfile,f)=0 then
begin
while FindNext(f)=0 do
при таком коде ты первый файл игнорируешь, сразу переходя к следующему
← →
F@T@L_Err0r © (2007-10-25 10:12) [5]Ну ето все панятна...Исправил...Но почему же всетаки переменная link остается пустой???
И F@T@L_Err0r © (25.10.07 10:08) [2] ???
← →
clickmaker © (2007-10-25 10:13) [6]
> как можно получить полный путь для копирования
а в S что?
← →
F@T@L_Err0r © (2007-10-25 10:14) [7]В S находится значение Edit1.text.
← →
stone © (2007-10-25 10:14) [8]зачем тебе его получать, если ты его передаешь?
> if FindFirst(s
← →
F@T@L_Err0r © (2007-10-25 10:17) [9]У меня там s+*.*...А как отрезать ето я не знаю...Что то там Copy...??
← →
clickmaker © (2007-10-25 10:27) [10]
> [7] F@T@L_Err0r © (25.10.07 10:14)
> В S находится значение Edit1.text
да ты чё? ну тогда все ясно
Серьезно, если в s - путь к папке, то полный путь = s + "\" + f.Name
← →
F@T@L_Err0r © (2007-10-25 10:35) [11]С Copy разобрался.Но он копирует право...а как сделать так чтобы он копировал влево?
← →
Правильный_Вася (2007-10-25 10:43) [12]
> чтобы он копировал влево?
или взад
← →
Сергей М. © (2007-10-25 11:09) [13]
> Парюсь уже два дня
И не надоело ?
Нет бы справку почитать - там и примерчик имеется)
Или чукча не читатель ?)
← →
Правильный_Вася (2007-10-25 11:11) [14]
> Парюсь уже два дня
пар костей не ломит
← →
Игорь Шевченко © (2007-10-25 11:18) [15]Интересно, а существует корреляция между количеством знаков @ в нике и степенью незнания и нежелания знать матчасть ?
← →
clickmaker © (2007-10-25 11:20) [16]
> пар костей не ломит
ПАР костей не ЛАМЕНТ
(с) "Generation P"
← →
Ins © (2007-10-25 11:20) [17]
> Игорь Шевченко © (25.10.07 11:18) [15]
Тут скорее другое явление. Как яхту назовешь, так она и поплывет.
← →
stone © (2007-10-25 11:29) [18]
> Игорь Шевченко © (25.10.07 11:18) [15]
> Интересно, а существует корреляция между количеством знаков
> @ в нике и степенью незнания и нежелания знать матчасть
> ?
С чего начинаются хакеры,
С подсмотра пароля на root,
И ника из слэшей и скобочек,
Без коего хакер не крут.
← →
F@T@L_Err0r © (2007-10-25 12:52) [19]Я делаю так:
temp:=copy(s,Pos(s,"*"),3);
и получается temp=*.*
а мне нада то что слева...
подкажите плиз...в справке такого нет.
← →
clickmaker © (2007-10-25 12:54) [20]
> [19] F@T@L_Err0r © (25.10.07 12:52)
подсказка: то, что слева, начинается с позиции 1
← →
F@T@L_Err0r © (2007-10-25 13:05) [21]но мне надо найти символ -* и начиная с него включительно вырезать все что после.Что я делаю не так???Подкажите пожалуйста.
← →
stone © (2007-10-25 13:32) [22]Ты копируешь 3 символа начиная с позиции *
А тебе надо скопировать все символы до позиции *
← →
F@T@L_Err0r © (2007-10-25 13:35) [23]А где задать КАК копировать слева или справа???
← →
stone © (2007-10-25 13:45) [24]
> А где задать КАК копировать слева или справа???
Ты всегда копируешь слева. Начиная с 1-го символа.
← →
stone © (2007-10-25 13:50) [25]
> Начиная с 1-го символа.
начинается с 1-го символа.
pos("*") возвращает тебе индекс символа
в твоем случае, применяя pos("*") ты копируешь не с 1-го символа, а с того, который тебе вернула функция pos("*")
← →
F@T@L_Err0r © (2007-10-25 13:50) [26]а как узнать длинну строки sюююведь нада знать сколько отрезать - s:=Copy(s,pos(s,"*"),?);
← →
Palladin © (2007-10-25 13:55) [27]Length(s) не ошибешся
← →
Palladin © (2007-10-25 13:56) [28]это если до конца, если до определенной позиции, то знак -, проходимый в начальных классах школы, тебе поможет
← →
Германн © (2007-10-25 14:04) [29]А ведь есть ещё и процедура Delete.
О сколько нам...
:-)
← →
Anatoly Podgoretsky © (2007-10-25 15:04) [30]Не пятница, но с успехом перекрыто.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.044 c