Форум программистов, компьютерный форум, киберфорум
C++: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 33 / 5
Регистрация: 01.12.2017
Сообщений: 708

Как сделать программу для проверки наличия папки на FTP сервере?

28.07.2018, 07:38. Показов 1489. Ответов 11

Студворк — интернет-сервис помощи студентам
Здравствуйте. У меня есть вопрос. Как сделать программу для проверки наличия папки на FTP сервере? Заранее спасибо за ответ.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.07.2018, 07:38
Ответы с готовыми решениями:

Команда для создания папки на FTP-сервере
на сервере имеется папка /public_html с помощью BAT команды нужно создать папку %username% (имя пользователя) уже скрипт готов, только...

Как найти папки на FTP-сервере из Oracle
Работаю на Oracle 11 с ftp-сервером с помощью пакета XUTL_FTP. Сейчас потребовалось найти не только список файлов, но и дочерние каталоги,...

Как просмотреть содержимое папки на FTP сервере
Всем доброго дня! Разобрался с подключением к FTP серверу. Подскажите 1) Как просмотреть содержимое папки на FTP сервере (для...

11
0 / 33 / 5
Регистрация: 01.12.2017
Сообщений: 708
30.07.2018, 12:04  [ТС]
Вопрос актуален!
0
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
30.07.2018, 13:00
Sasha38, если под Windows и можно использовать WinINet, то поглядите на функцию FtpSetCurrentDirectory. Если она завершилась удачно - то дирестория существует. Иначе глядим GetLastError().
0
0 / 33 / 5
Регистрация: 01.12.2017
Сообщений: 708
30.07.2018, 14:47  [ТС]
schdub, можете пожалуйста дать пример?
0
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
31.07.2018, 00:28
Sasha38,
C++
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
#include <wininet.h> 
#pragma comment(lib, "Wininet")
#define SHOW_ERROR std::cout << "Error: " << GetLastError() << std::endl
 
/*
 RETURN VALUE
 1 - dir exist
 0 - dir not exist
 -1 - some error just happened
*/
 
int isFtpDirExist(const char * dirName) {
    HINTERNET hInternet = NULL;
    HINTERNET hFtpSession = NULL;
    hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
    if (hInternet == NULL) {
        SHOW_ERROR;
        return -1;
    }
 
    char host[] = "server";
    char user[] = "user";
    char pass[] = "pass";
    int result = -1;
 
    hFtpSession = InternetConnectA(hInternet,
        host, INTERNET_DEFAULT_FTP_PORT,
        user, pass,
        INTERNET_SERVICE_FTP,
        0, 0);
    if (hFtpSession == NULL) {
        SHOW_ERROR;
    } else {
        DWORD dwSize;
        TCHAR szOldDirName[FTP_FUNCTIONS_BUFFER_SIZE];
 
        *szOldDirName = '\0';
        if (!FtpGetCurrentDirectoryA(hFtpSession, szOldDirName, &dwSize)) {
            SHOW_ERROR;
        } else {
            std::cout << "Current directory: " << szOldDirName << std::endl;
        }
        if (!FtpSetCurrentDirectoryA(hFtpSession, dirName)) {
            SHOW_ERROR;
            // FIXME: проверяем GetLastError() здесь если нужно
            result = 0;
        } else {
            result = 1;
        }
        InternetCloseHandle(hFtpSession);
    }
    InternetCloseHandle(hInternet);
    return result;
}
0
0 / 33 / 5
Регистрация: 01.12.2017
Сообщений: 708
31.07.2018, 16:45  [ТС]
schdub, не работает.
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
02.08.2018, 13:48
Цитата Сообщение от Sasha38 Посмотреть сообщение
не работает.
замечательное описание проблемы! браво.
а теперь серьёзно.
где код, который вы пробовали?
это лишь функция, а не вся программа.
0
0 / 33 / 5
Регистрация: 01.12.2017
Сообщений: 708
02.08.2018, 14:17  [ТС]
GbaLog-, его уже написал schdub.
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
03.08.2018, 11:49
Цитата Сообщение от Sasha38 Посмотреть сообщение
его уже написал schdub.
это одна функция. оно не будет компилироваться.
0
0 / 33 / 5
Регистрация: 01.12.2017
Сообщений: 708
03.08.2018, 17:23  [ТС]
GbaLog-, во втором посте 1 функция?
Миниатюры
Как сделать программу для проверки наличия папки на FTP сервере?  
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
03.08.2018, 19:20
Цитата Сообщение от Sasha38 Посмотреть сообщение
во втором посте 1 функция?
да, для того, чтобы программа скомпилировалась, нужно как минимум функцию main написать ещё.
а потом ещё и эту функцию вызвать с нужным параметром.
0
0 / 33 / 5
Регистрация: 01.12.2017
Сообщений: 708
03.08.2018, 19:29  [ТС]
GbaLog-, main я вызвал, все необходимые заголовочные файлы и библиотеки подключил.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.08.2018, 19:29
Помогаю со студенческими работами здесь

Скрипт проверки наличия папки
Добрый день! В общем в связи с некоторыми неувязками написал скрипт, который должен при запуске программы через RemoteAPP исполняться. Он...

Проверка наличия папки на FTP
Всем доброго времени суток. У меня есть проблема с определением папок на FTP сервере. Задача заключается в том, что нужно проверить...

Как на ftp-сервере сделать папку для всех и папку для некоторых?
ubuntu 12.10 помогите пожалуйста, столкнулся с проблемой создания фтп сервера создается фтп сервер заходит, но каждый пользователь...

Создание новой папки на FTP-сервере
Здравствуйте! Нужно на C# сделать создание новой папки на FTP-сервере. На просторах инета нашёл много разных примеров, своял такой код: ...

Получить список файлов из заданной папки на FTP-сервере
Программа должна: 1)Подключаться к заданному FTP-серверу с указанным логином и паролем (сделано) 2)Получать список файлов из...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru