Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Добрый день. Может кто подскажет, как можно из FoxPro достучаться до FTP-сервера, но через модем, а не выделенный канал, с помощью программных вызовов модема? Я имею в виду следующее: в Fox'е сформировать какую-нибудь табличку; проверить наличие установленного в системе модема; вызвать удаленное соединение; передать ранее сформированную табличку через установленное соединение на FTP-сервер. Буду признателен, если что-нибудь посоветуете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2003, 13:44 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Для опреления сетевых интерфейсов (одним из которых является и интерфейс твоего модема) и установления соединения и сужесвующих телефонных книг на компе я использовал функции RAS API. Правда, по моему там были проблемы передачи параметров в структуры. Но это болется написанием функционала в FLL. Для работы с файлами можешь использовать WInInet API, там все есть и как взять данные и как положить и куда и т.д и т.п, а можешь простой командой RUN ftp и подставить в качесве параметра команды ftp имя файла скрипта в котором полностью прописан сценарий того что делать. Ну вот , примерно такие соображения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2003, 15:29 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
То-есть, я так понял, что с помощью wininet.dll, а также rasapi32.dll я смогу и устанавливать модемное соединение и отправлять с помощью модема данные? Для меня важно, чтобы используемая dll была установлена в минимальном составе составе windows, чтобы ее не включать отдельно в дистрибутив программы. Насчет присоединения скрипта к вызову команды ftp - не совсем понял - это будут вызовы все тех же api-функций? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2003, 17:24 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Можно попробовать работать через MFCXX.dll. При этом, если у клиента в Интернет экплорере стоит настройка "использовать модемное соединение", то при создании FTP соединения автоматически поднимется стандартный виндовый дайлер с нужным соединением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2003, 17:34 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Всем спасибо за советы - буду пробовать. Тем не менее, предложения принимаются... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.10.2003, 17:45 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
> Насчет присоединения скрипта к вызову команды ftp - не совсем понял - >это будут вызовы все тех же api-функций? Нет. Ты же можешь ручками манипулировать данными на FTP сервере ? Можешь. Запускаешь "пуск" ->"выполнить" , там набираешь команду FTP и попадаешь в консольное приложение FTP клиента которое стоит , если не ошибаюсь, на любых виндах. Вот там можно манипулировать данными сервера с которым ты конектишься , опять же с помошью команд. Так вот , это команда (FTP) , при старте может принимать имя файла в котром твои команды уже набраны. Вот тебе и остается в результате работы твоего приложения только создать этот файл(к кому конектится, и что делать) и просто запустить это все добро фоксовским RUN. Консольные команды FTP клиента можно посмотреть запустив FTP /?. Остаеться только соединиться. Причем тут тож 2 подхода. 1. С использоваем записей телефонных книг, это через RAS API. 2. Можно все эти RAS API "послать" и набирать номер напрямую, через команду модема "AT". Тож работает. Только в этом случае тебе придется работать с СOM портом. Но и это борется. Можешь, через OCX MSCOMM, а можешь и его послать, открыв порт просто фоксовской командой FCREATE("COM1",12) и просто писать туда данные и читать как в обычный файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 13:33 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Flex2: Спасибо, понял, торможу понемногу... Проблема в том, что надо написать универсальный "соединитель" клиента (у которого разнообразные версии Windows) через dial-up соединение любого модема (включая внутренние и usb) с ftp-сервером. Старая Dos'овая программа общалась без проблем с модемом напрямую через com-порт, с прочими же модемами возникали проблемы. Пока не начал реализовывать, но думаю использовать один из 2-х подходов: 1 - проверять наличие модема, соединения и определять параметры соединения через Ras32api; соединение и доставку (обработку) информации через ftp.exe. 2 - то же через ras32Api, а для соединения и обработки использовать функции wininet.dll. По опыту работы с доступом к ftp-серверу через канал нормально работают и 1 и 2 варианты, только при передаче информации через Wininet.dll когда канал "узок", а объем информации велик, возникали проблемы с торможениями и зависаниями клиентской машины. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 16:21 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Ага, зависает. :)) Там же есть 2 режима: синхронного обмена и асинхронного. Так вот под модель не Protection-Memory-Mode (это все что не техгологий NT) муляж асинхронности, а с распеределением задач посредсвом объектов синхронизации , ну там критические секции , мьютексы, семафоры..., в них на уровне ОС глюк. Вот и тормозит и зависает. Тож на это ловился. Одна программулина, под NT пашет будь здоров. Под Win95/ 98 тормозит и работает синхронно, блокируя обработку всех сообщений Ос в главном окне приложения. Но тут есть выход. использовать посекционную закачку и отправку сообщений. Но тогда и сервер должен быть такой , чтобы понимал что от него хотят не всеь файл а только процент. Ввести на закачку/отправку отдельный поток и все получится. Так, если ты понимаешь что делать, какие проблемы тогда еще ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 16:38 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Может я чего не понимаю, но как именно под win95/98 посекционно закачивать на/с ftp файл? Ведь wininit функции: getFtpFile и PutFtpFile берут и закачивают указанный файл целиком? В остальном ясно, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 16:56 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
http://www.progz.ru/viewtopic.php?t=2017 - вот тут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 17:01 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Так вот , это уже проблемы твоей программной реализации. Если не критично то используй HTTP. Я вообще не вижу разницы в подходах, за исключением того что по FTP ты используешь 21 порт, а по HTTP 80, тем более что по HTTP секции реализованы на уровне API. Но уж если так критично использовать FTP , то что тебе стоит самомоу порезать файлик, а серверу его собрать. Я же говорю - сервер должен понимать что от него хотят , а значит должен быть твой или пропатченный тобой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 17:08 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Не, сервер будет именно ftp и не мой, а провайдера, так что увы. Так что скорее буду через ftp.exe. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 17:37 |
|
||
|
из Fox -> FTp через модем
|
|||
|---|---|---|---|
|
#18+
Погодь. На выходных посмотрю, все уже написано. найду - вышлю FLL c функционалом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2003, 17:46 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32283534&tid=1597783]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
146ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 263ms |
| total: | 521ms |

| 0 / 0 |
