Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.08.24;
Скачать: [xml.tar.bz2];

Вниз

Примеры Indy   Найти похожие ветки 

 
Michael   (2008-07-16 10:38) [0]

Доброго времени суток!
Долго гуглил, но так и не нашел демки от Indy (конкретно - FTP Client).
Искал на:
http://www.nevrona.com/indy (как написано в C:\Program Files\Borland\Dlephi7\Demos\Indy\Readmy_Indy.txt)
http://www.indyproject.org
http://www.smartftp.com
и др.
Просьба - скиньте ссылочку на примеры от Indy.
Заранее благодарен


 
brother ©   (2008-07-16 10:41) [1]

а на винте поиск папок устрой: indyftp
удивишься)


 
DVM ©   (2008-07-16 10:53) [2]


>
> Michael  

http://www.indyproject.org/Sockets/Demos/index.EN.aspx


 
Michael   (2008-07-16 11:07) [3]


> brother ©   (16.07.08 10:41) [1]
> а на винте поиск папок устрой: indyftpудивишься)

Удивился ) Тому, что "Поиск не дал результатов" (Копирайт)

> DVM ©

Спасибо большое!


 
Michael   (2008-07-16 11:13) [4]

Еще вопрос:
в процессе рассмотрения ответов на вопросы, касающиеся программированию FTP-клиентов, нашел различные мнения относительно компонентов IdFTP и NMFTP. Что можете сказать - какой из них предпочтительней?


 
brother ©   (2008-07-16 11:14) [5]

> Удивился ) Тому, что "Поиск не дал результатов" (Копирайт)

удивился еще больше (копирайт)


 
Palladin ©   (2008-07-16 11:18) [6]


> какой из них предпочтительней?

NM больше нет среди нас начиная с D7... а предпочтительней... в последнее время больше нравится ICS чем indy


 
Michael   (2008-07-16 11:25) [7]


> в последнее время больше нравится ICS чем indy

Извиняюсь за свою лень, но... ссылочку не дадите?


 
DVM ©   (2008-07-16 11:30) [8]


> Michael   (16.07.08 11:13) [4]

NM компоненты несколько глюкавые были. Лучше их не использовать, да и нет их в новых версиях Delphi.

Indy - блокирующие сокеты. ICS - неблокирующие асинхронные сокеты.
У каждого набора компонентов свои преимущества и недостатки.
Indy проще в использовании "в лоб". Так как блокирующая природа позволяет выполнять операции с ними последовательно (что легче для понимания) и никак иначе. Но блокирующая природа становится камнем преткновения при создании приложений с пользовательским интерфейсом, которому блокирующая природа инди противоестественна. Приходится применять потоки и пр.

ICS - неблокирующие асинхронные сокеты. Отлично вяжутся с событийной моделью Windows и интерфейсом пользователя, но асинхронная природа усложняет резко логику приложения, поскольку разные действия получаются разнесены во времени и по коду. Несколько сложно для понимания.


 
Palladin ©   (2008-07-16 12:47) [9]

http://www.overbyte.be


 
Anatoly Podgoretsky ©   (2008-07-16 12:56) [10]

> DVM  (16.07.2008 11:30:08)  [8]

ICS - поддерживает и неблокирующие синхронные сокеты. Как правило большинство методов имеют две формы синхронное или ассинхронное выполнение.


 
DVM ©   (2008-07-16 13:02) [11]


> ICS - поддерживает и неблокирующие синхронные сокеты

Понятно.


 
Michael   (2008-07-16 20:58) [12]

Всем
> Palladin


Спасибо!

> Anatoly Podgoretsky

С блокировкой исполнения мне вроде бы все понятно. Не могли бы Вы рассказать, чем отличается синхронная работа FTP-клиента от асинхронной?
Скажем, чем отличается процедура закачки файла в синхронном и асинхронном режиме. Ну или подскажите, где почитать.
Спасибо.


 
DVM ©   (2008-07-16 23:11) [13]


> Michael   (16.07.08 20:58) [12]

Работа с синхронными неблокирующими сокетами обычно состоит в том, что функцией select() проверяют постоянно состояние интересующего сокета и как только нужное состояние достигнуто сразу выполняют нужную операцию. Сокет при этом неблокирующий, т.е. сетевые функции не блокируют работу вызвающего потока.

В асинхронном режиме о смене состояния сокета программа узнает по приходу в окно соответствующего сообщения. Сразу по приходу сообщения программа может вызывать соответствующие сетевые функции. Сокеты тоже неблокирующие. Для Windows это наиболее близкий по духу вариант.


 
DVM ©   (2008-07-16 23:12) [14]


> Michael   (16.07.08 20:58) [12]

Ну и в противоположность всему этому есть еще блокирующие сокеты. Функции работающие с такими сокетами не возвращают управления в вызывающий поток пока не будет достигнуто запрашиваемое состояние сокета или не будет возвращена ошибка.


 
Michael   (2008-07-17 20:24) [15]


> DVM ©

Прошу прощения, но я все-равно не понял. Блокировка работы сокета мне понятна - в блокирующем режиме пока процедура/функция не выполнилась, поток/сокет "зависает". В неблокирующем - нет.
А с чем синхронизируется или несинхронизируется выполнение процедуры/функции? С состоянием сокета? Зачем? Не понятно...


 
Anatoly Podgoretsky ©   (2008-07-17 22:29) [16]


> Скажем, чем отличается процедура закачки файла в синхронном
> и асинхронном режиме. Ну или подскажите, где почитать.
> Спасибо.

Процедура ничем, и там и там PUT/GET
А различие в том, что в случае ассинхронной работы, я не должен ожидать окончания операции, а заниматься другой полезной работой, например качать еще тысячу файлов. Как только файл будет закачен будет сигнал - в терминамах событийного программирование - возникнет событие ОкончаниеЗагрузкиФайла или событие ОшибкаЗагрузкиФайла.


 
Anatoly Podgoretsky ©   (2008-07-17 22:33) [17]


> Michael   (16.07.08 20:58) [12]

Ты в Дельфи то программировал?
Например на нажатие кнопки возникает событие, которое ты обработаешь именно в этот момент, а не сидишь и ждешь, когда будет нажата кнопка. В случае не событийного, например для формы с 10 кнопками придется создать 10 потоков, по одному на кнопку и по одному на каждую операцию. Именно этим отличается ICS от Инди.
Инди это мир Никсов, которое принудительно портировали в Виндоус. Не наша это идеология, вражеская.


 
Michael   (2008-07-18 11:41) [18]


> Anatoly Podgoretsky

Спасибо, буду смотреть, что мне лучше подходит.
Всем спасибо, обсуждение закрыто.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.08.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.049 c
2-1216634583
Int23
2008-07-21 14:03
2008.08.24
Как в существующую книгу Эксела добавить макрос и вызвать его


4-1195300824
NX
2007-11-17 15:00
2008.08.24
Не освобождается мьютех, почему?


2-1216282915
Артур Пирожков
2008-07-17 12:21
2008.08.24
Проблемы с Tidftp


15-1214665107
MsGuns
2008-06-28 18:58
2008.08.24
Процесс программирования


15-1214997047
Smile
2008-07-02 15:10
2008.08.24
:(





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский