Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2013, 20:00   #1
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию Не могу понять в чем ошибка? idFTP.

Привет. Пишу довольно громадную программу. Для работы программы используется FTP-сервер сайта. В общем вот код:
Код:
var
i: integer; //счетчик цыкла
sp: TStrings; //список папок
login: string; //то что мы ищем
begin
idFTP1.Host:='fortergo.3dn.ru'; //сайта. Вопрос: задавать с http:// или без?
idFTP1.Username:='4fortergo'; //логин 
idFTP1.Password:='********'; //пароль, зашифрован для защиты данных
Account:=false; //переменая глобальная!
sp:=TStrings.Create; //создаем список
login:=edit1.Text; //получаем, то что будем искать
if login='' then exit; //проверочка
idFTP1.Connect(); //соеденение
idFTP1.ChangeDir('http://fortergo.3dn.ru/'); //Открываем главную папку сайта
if idFTP1.Connected=false then exit; //проверка
idFTP1.List(sp,'Users',false); //получаем папки и файлы в директории
for i:=0 To sp.Count-1 do 
begin
if  sp.Strings[i]=login then
begin
Account:=true; //нашли :)
break; //выход из цыкла
end;
end;
idFTP1.Disconnect; //рассоеденение
Смысл в том, что всё это выдает ошибку(не кодовую!):
Pronibited file name: http://fortergo.3dn.ru.
И теперь вопрос: Что не так?
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 23.05.2013, 20:13   #2
Lardes
Форумчанин
 
Аватар для Lardes
 
Регистрация: 19.08.2011
Сообщений: 329
По умолчанию

Цитата:
Сообщение от саша40 Посмотреть сообщение
Вопрос: задавать с http:// или без?
Без.

Цитата:
Сообщение от саша40 Посмотреть сообщение
[/CODE]idFTP1.ChangeDir('http://fortergo.3dn.ru/'); //Открываем главную папку сайта[/CODE]
Неверно выбираешь каталог. Почитай про работу с ftp.

Цитата:
Сообщение от саша40 Посмотреть сообщение
Pronibited file name
P.S. И не "Pronibited file name", а "Prohibited file name", что значит "запрещенное имя файла"
Lardes вне форума Ответить с цитированием
Старый 23.05.2013, 20:29   #3
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от Lardes Посмотреть сообщение
Без.



Неверно выбираешь каталог. Почитай про работу с ftp.



P.S. И не "Pronibited file name", а "Prohibited file name", что значит "запрещенное имя файла"
а как решить такую ошибку? Но всё равно спасибо хоть за это.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 23.05.2013, 20:45   #4
Lardes
Форумчанин
 
Аватар для Lardes
 
Регистрация: 19.08.2011
Сообщений: 329
По умолчанию

Если это корневая папка, то
Код:
IdFTP1.ChangeDir('/');
Lardes вне форума Ответить с цитированием
Старый 23.05.2013, 21:47   #5
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от Lardes Посмотреть сообщение
Если это корневая папка, то
Код:
IdFTP1.ChangeDir('/');
помогло. Спасибо, но вот ещё. Пишет это:
'I wonot open connection to 0.0.0.0(only to мой ip)'. Пишет что не может открыть соеденение с 0.0.0.0. Думаю ошибка в том, что я не указал параметра для
Код:
id.FTP1.Connect();
. Но какой указывать?
P.S. Ошибка цитирована не до конца. слова "мой ip"=текущий ip.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 24.05.2013, 11:57   #6
Lardes
Форумчанин
 
Аватар для Lardes
 
Регистрация: 19.08.2011
Сообщений: 329
По умолчанию

Код:
idFTP1.Host:='fortergo.3dn.ru';
Скорее дело в этом. Уточни какой FTP-адрес должен быть
Lardes вне форума Ответить с цитированием
Старый 24.05.2013, 12:48   #7
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Цитата:
Сообщение от Lardes Посмотреть сообщение
Код:
idFTP1.Host:='fortergo.3dn.ru';
Скорее дело в этом. Уточни какой FTP-адрес должен быть
адрес: http://fortergo.3dn.ru/
Ай, значит по адресу надо.
Поиск производится тут: http://fortergo.3dn.ru/Users
Могу указать имя сервере и ip, если надо.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.

Последний раз редактировалось саша40; 24.05.2013 в 12:53.
саша40 вне форума Ответить с цитированием
Старый 24.05.2013, 15:00   #8
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Посмотрел в админ панели фтп и получил так:
FTP host: fortergo.3dn.ru
FTP login: 4fortergo
FTP password: ***** тот который использую
Может мешает бранбраузер. Так как порт стоит 21. Может поставить на 1021?
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 25.05.2013, 21:37   #9
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Всё исправил:
Код:
var
i: integer;
sp: TStringList;
login: string;
begin
idFTP1.Host:='***';
idFTP1.Username:='****';
idFTP1.Password:='****';
idFTP1.Passive:=true;
Account:=false;
sp:=TStringList.Create;
login:=edit1.Text;
if login='' then exit;
if idFTP1.Connected then idFTP1.Disconnect;
idFTP1.Connect(True);
if idFTP1.Connected=false then
begin
ShowMessage('Не удалось соедененится с сервером');
exit;
end;
idFTP1.ChangeDir('/Users/');
idFTP1.List(sp);
for i:=0 To sp.Count-1 do
begin
if  sp.Strings[i]=login then
begin
Account:=true;
break;
end;
end;
if Account=false then
ShowMessage('Аккаунт не найден')
else
ShowMessage('Аккаунт найден');
FreeAndNil(sp);
idFTP1.Disconnect;
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не могу понять, в чем ошибка Sv. Общие вопросы C/C++ 8 01.11.2012 18:07
не могу понять в чем ошибка 6002theJuicy Visual C++ 4 23.05.2012 15:19
в чем ошибка? не могу понять... lexflax C++ Builder 1 28.01.2012 15:35
Не могу понять в чем ошибка.... Blonde Помощь студентам 0 21.05.2011 14:19
Не могу понять, в чем ошибка FlashProStar Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 01.12.2010 12:20