|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.05.2009, 16:03 | #1 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 29
|
Работа с файлами на удалённом сервере
Доброго времени суток Вам!
Есть необходимость написать следующую программку: exe лежит на локальном компе а файл, куда надо записать информацию из программы по нажатию буттон1 (информация берется из поле ввода текста) лежит на фтп под паролем и логином. Как это можно реализовать? |
02.05.2009, 16:39 | #3 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 29
|
Спасибо большое! Но я оч мало чего знаю и не много понял....
Есть какие-то примеры? |
02.05.2009, 16:53 | #4 |
Банхаммер
Участник клуба
Регистрация: 17.02.2007
Сообщений: 1,754
|
компонент устанавливает связь
FTP.Connect; далее выполняется чтение, сравнения, а дальше просто команда передачи или приема FTP.PUT (...); или FTP.GET (...); далее разрываем соединение.. FTP.Disconnect; ну раз мало что знаешь так пользуйся поиском, на что он вообще нужен7 что бы мы за вас искали7 |
02.05.2009, 16:57 | #5 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 29
|
Ссори, но на то я и зарегестрировался, чтобы попросить о помощи у знающих людей.
Может Вы сможете мне подсказать где есть информация с примерами на эту тему? Я-то искал, но ничего не нашёл. Может плохо искал. |
02.05.2009, 17:11 | #6 |
Банхаммер
Участник клуба
Регистрация: 17.02.2007
Сообщений: 1,754
|
|
02.05.2009, 17:25 | #7 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 29
|
Спасибо огромное!
|
02.05.2009, 17:31 | #8 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 29
|
Как-то слишком сложно все это....
Простите, стыдно, но не понимаю я.... Можно просто на нажатие кнопки Буттон1 все файлы из папки отправлялись на ФТП с заменой прежних... Там же ещё как-то авторизироваться надо... Помогите неопытному... За вторую тему ссори. Не знал куда писать... |
02.05.2009, 18:02 | #9 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 29
|
Помогите, пожалуйста!
Вот нашёл код. Кажется то что искал. Только с ним не могу разобраться. Куда что писать? Где из этого всего событие на кнопку? Помогите, профи. Я совсем путаюсь... -------------------------------------- procedure uploadperftp; procedure getdir(dir: string); var searchrec: tsearchrec; details, nodetails: tstringlist; k: integer; begin //iterate through directory given if findfirst(dir + '*.*', faanyfile, searchrec) = 0 then begin repeat //get rid of the both "dummy-directories" '.' and '..' if (searchrec.name <> '.') and (searchrec.name <> '..') then begin //if we found a folder if (searchrec.attr and fadirectory) = fadirectory then begin //get folder contents from ftp. one with details, one without details := tstringlist.create; nodetails := tstringlist.create; ftpclient.list(details, '', true); ftpclient.list(nodetails, '', false); //we only want to have directories in the list (without '.' and '..') for k := details.count - 1 downto 0 do begin if details.strings[k] <> '' then begin if (details.strings[k][1] <> 'd') or (nodetails.strings[k] = '.') or (nodetails.strings[k] = '..') then begin details.delete(k); nodetails.delete(k); end; end; end; //if our directory does not exists on the server, create it if nodetails.indexof(searchrec.name) = -1 then begin ftpclient.makedir(searchrec.name); end; //change into next directory on server ftpclient.changedir(searchrec.name) ; details.free; nodetails.free; //and also locally go into the next subfolder getdir(dir + searchrec.name + ''); //we have to go one directory up after leaving the recursion hochgehen ftpclient.changedirup; end else begin //if it's only a file, upload it to the current directory ftpclient.put(dir + searchrec.name, searchrec.name); end; end; until findnext(searchrec) <> 0; findclose(searchrec); end; end; var dir: string; details, nodetails: tstringlist; k: integer; begin //set some basic settings on your ftp client (tidftpclient) with ftpclient do begin host := 'your_server.com'; // adjust your data here / hier gwunschte daten eintragen username := 'your_username'; // adjust your data here password := 'your_password'; // adjust your data here passive := true; // adjust your data here end; ftpclient.connect; //if you want to upload you data to an remote-directory, enter it below (does not matter if 'dirdir' or 'dir/dir') dir := stringreplace('your/remote_directory', '', '/', [rfreplaceall]); // adjust your data here //remove first '/' if there's one if dir <> '' then begin if dir[1] = '/' then delete(dir, 1, 1); //but add a '/' at the end if dir[length(dir)] <> '/' then dir := dir + '/'; //loop through our remote-directories while pos('/', dir) > 0 do begin //get folder contents from ftp. one with details, one without details := tstringlist.create; nodetails := tstringlist.create; ftpclient.list(details, '', true); ftpclient.list(nodetails, '', false); //we only want to have directories in the list (without '.' and '..') for k := details.count - 1 downto 0 do begin if details.strings[k] <> '' then begin if (details.strings[k][1] <> 'd') or (nodetails.strings[k] = '.') or (nodetails.strings[k] = '..') then begin details.delete(k); nodetails.delete(k); end; end; end; //if our directory does not exists on the server, create it if nodetails.indexof(copy(dir, 1, pos('/', dir) - 1)) = -1 then begin ftpclient.makedir(copy(dir, 1, pos('/', dir) - 1)); end; //change to our directory on server ftpclient.changedir(copy(dir, 1, pos('/', dir) - 1)); //remove first directory from path ('your/directory/subdir/' --> 'directory/subdir/') delete(dir, 1, pos('/', dir)); details.free; nodetails.free; end; end; //ftp client is ready in your remote-directory //begin to upload our local directory dir := 'c:yourlocaldirectory'; // adjust your data here if dir[length(dir)] <> '' then dir := dir + ''; getdir(dir); ftpclient.disconnect; end; ---------------------------------------- |
02.05.2009, 18:03 | #10 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 29
|
Может что выкинуть надо отсюда?
Мне надо чтобы файлы заменялись при совпадении имен на ФТП. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
chgrp на удалённом сервере | goblinyara | Операционные системы общие вопросы | 3 | 15.03.2009 18:19 |
Работа с файлами | [MI_nor] | Общие вопросы C/C++ | 4 | 08.03.2009 17:50 |
Работа с Paradox таблией на сервере с помощью ADOConnect | Dozent | БД в Delphi | 3 | 22.05.2008 17:56 |
работа с файлами С++ | Rossik | Общие вопросы C/C++ | 1 | 16.05.2008 19:28 |