Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Мастера DELPHI. Новости мира компонент, FAQ, статьи...


Информационный Канал Subscribe.Ru

Ежедневная рассылка сайта Мастера DELPHI

DELPHIMASTER.ru

Выпуск от 07.08.04 09:18

Лучшее из нашего FAQ   |x|
Помогите с Socket !!!!
»»» Pavel - pavel@tts.tomsk.su (23.10.00 05:11)
Как передать файл с машины на машину через Socket соединение? Как всегда нужны примеры ;-)

»»» oksana - oksana@wtgres.pssr.ru (23.10.00 07:24)
Для данной цели можно воспользоваться компонентами TNMStrmServ и TNMStrm, которые предназначены для обмена потоками данных.

Обработчик для клиента:

var
MyStream:TMemoryStream;
begin
MyStream:=TMemoryStream.Create;
MyStream.LoadFromFile('c:\windows\рабочий стол\demo.txt');
NMStrm1.PostIt(MyStream);
MyStream.Free;
end;

Обработчик для сервера:

procedure TForm1.NMStrmServ1MSG(Sender: TComponent; const sFrom: String;
strm: TStream);
var
MyStream:TMemoryStream;
begin
MyStream:=TMemoryStream.Create;
MyStream.CopyFrom(strm,NMStrmServ1.BytesTotal);
MyStream.SaveToFile('c:\windows\рабочий стол\demo2.txt');< br>end;

С уважением, Оксана

»»» shi - shi@tts.tomsk.su (23.10.00 11:44)
Простите за глупый вопрос, но где взять TNMStrmServ и TNMStrm.

»»» oksana - oksana@wtgres.pssr.ru (23.10.00 12:51)
В пятой дельфе (Enterprise) есть данные компоненты. Они находятся на вкладке FastNet
С уважением, Оксана

»»» pavel - pavel@tts.tomsk.su (23.10.00 13:58)
А если использовать TpowerSock то тогда как передать файл?

»»» oksana - oksana@wtgres.pssr.ru (23.10.00 14:55)
На сколько мне не изменяет память, там возникают праблы с размерами файлов. Хотя попробывать стоит. Ведь там так же существуют методы для работы с потоками (чтение, запись).
С уважением, Оксана

»»» Pavel - pavel@tts.tomsk.su (24.10.00 19:23)
А как организовать двусторонний обмен файлами ведь если я правильно понял то при помощи TNMStrmServ и TNMStrm поток инициируется со только стороны клиента.
Одним словом передомной следу! ющая зад ача: Программа клиент должна связаться с сервером передать ей файл потом запросить и принять определенный файл.

»»» oksana - oksana@wtgres.pssr.ru (25.10.00 05:28)
Тогда можно писать по аналогии с Chat, пример которого присутствует в Demos.
Таким образом, приложение у тебя выступает и в роли сервера и в роли клиента (два в одном), в зависимости от действий.

С уважением, Оксана

»»» pavel - pavel@tts.tomsk.su (25.10.00 05:47)
А каким компанентом лучше воспользоваться?

»»» oksana - oksana@wtgres.pssr.ru (25.10.00 05:58)
Для этих целей я использовала, выше названные, TNMStrmServ TNMStrm.
С уважением, Оксана

»»» pavel - pavel@tts.tomsk.su (25.10.00 07:09)
TNMStrmServ и TNMStrm как я понял не позволяют делать двусторонний обмен или я не прав, и как от клиента к серверу передать запрос типа "sendfile C:\text.txt"

»»» oksana - oksana@ wtgres.pssr.ru (25.10.00 07:42)
Вы правы. Клиент (TNMStm)- предназначен для отправления данных серверу (в данном случае потоков). А сервер для получения.
Но ничего не может помешать в приложении вывесить эти два компонента, каждый из которых будет выполнять свои функции, при этом следует изменять свойство Host, каждого из них. Для правильного функционирования.

С уважением, Оксана

»»» pavel - pavel@tts.tomsk.su (25.10.00 08:05)
Нехотелось бы на клиентской части размещать TNMStrmServ в целя безопасности. Может еще какой вариант посоветуете.

»»» oksana - oksana@wtgres.pssr.ru (25.10.00 08:38)
А какие проблемы с безопасностью???
Обработчиков навесить и все в порядке. Активизировать компоненты при необходимости.
Тогда можно попробывать использовать TPowerSock. В нем в неопубликованном виде, присутствуют события TNMStrm
а также следующие методы procedure CaptureStream(MainStream: TStream; Size: longint); чтение из сокета данных и помещение их в поток;
procedur! e Captur eFile(FileName: String); //// помещение в файл;
procedure SendFile(FileName: String);
procedure SendStream(MainStream: TStream);
В хелпе есть примеры по их использованию

С уважением, Оксана

»»» pavel - pavel@tts.tomsk.su (25.10.00 09:57)
Всеже компанент TPowerSock больше подходит. Но тут возникает вопрос "Какое событие происходит на сервере при получении от клиента к примеру строки,а не потока"

»»» oksana - oksana@wtgres.pssr.ru (25.10.00 10:36)
Данные передаются пакетами (порциями), поэтому не столь выжно, что это поток или строка.
В момент приема очередной порции данных возникает событие:
property OnPacketRecvd: TNotifyEvent;

С уважением, Оксана
»»» Mike Goblin - mgoblin@mail.ru (25.10.00 10:42)
А может быть проще FTP сервер поставить и не заниматься изобретением велосипеда,
С уважением, Mike Goblin

»»» pavel - pavel@tts.tomsk.su (25.10.00 12:27)
А где взять компанент для FTP сервера?

»»» Mike Goblin - mgoblin@mail.ru (25.10.00 13:08)
В Win NT а еще лучче в Linux есть уже готовые сервера FTP
Настаиваешь права доступа пользователей
и с помощью Internet Explorer или Netscape или еще какого браузера имеешь пересылку файлов туда-сюда без всякого геморроя и в пределах локалки, а если есть статический IP в Inete - хоть по всему шару. Если уж совсем невмоготу и хочется что-то сваять на Делфи на закладке FastNet берешь NMFTP и лепишь клиента, там все до безобразия просто.

»»» Shi - Shi@tts.tomsk.su (28.10.00 10:52)
Как правильно описать событие OnPacketRecvd у компанента TPowerSock ведь его нет в разделе Events?

»»» oksana - oksana@wtgres.pssr.ru (30.10.00 12:02)
Для формы :procedure Powersock1PacketRecvd(Sender: TObject);
Далее:

procedure TForm1.Powersock1PacketRecvd;
begin

end;< br>

С уважением, Оксана

-= Из конференции са! йта MASTERS OF DELPHI (http://delphi.mastak.com) =-

»»» Прислать свои комментарии

Обсуждается в конференциях   |x|
  • Восстановление БД Oracle
    Упал сервак. Дампы базы есть но трехдневной давности. Но я могу попытаться с винта упавшей машины добыть все файлы от ...
  • Нужно получить по известному хэндлу иконки её глубину цвета
    Уважаемые Мастера! Помогите решить следующую проблему. Нужно получить по известному хэндлу иконки её глубину цвета. ...
  • Создание общего ресурса
    Подскажите, кто знает, как вызвать окно выбора папки на удаленном компе для создания на нём общего ресурса? Ни как не ...
  • Как встроить шрифт в программе?
    Привет мастерам! Подскажите: как втроить шрифт в программе (как это делает WORD Ã в документе) Т.e. при компилации ...
  • MotherBord ID
    Как получить номер MotherBord?
  • Версия 1.92 (дождались)
    Новости от 30 июля 2004 г. Новости KOL и MCK (v1.92): [-]KOL: свойство TControl.CanResize исправлено, Дмитрий Жаров ...
  • Excel
    Здравствуйте уважаемые знатоки OLE! У меня такая задача: нужно по нажатию кнопки "Save" сохранять таблицу TStringGrid в ...
У нас большой выбор статей   |x|
Что такое "Змейка" и как с ней бороться?
В статья подробно, шаг за шагом описывается реализация алгоритма движка игры "Змейка".
Новинки книжного рынка   |x|
Современные операционные системы. 2-е изд.
Это с нетерпением ожидаемое, переработанное и исправленное издание всемирного бестселлера включает в себя сведения о последних достижениях в области технологий операционных систем. Книга построена на примерах и содержит информацию, необходимую для понимания функционирования современных операционных систем. Благодаря практическому опыту, приобретенному при разработке нескольких операционных систем, и высокому уровню знания предмета Эндрю Таненбаум смог ясно и увлеченно рассказать о сложных вещах. В книге приводится множество важных подробностей, которых нет ни в одном другом издании.
Автор: Таненбаум Э. С.
Опрос населения :)
К какой возрастной категории Вы принадлежите ?
»»» меньше 16
»»» от 17 до 20
»»» от 21 до 23
»»» от 24 до 26
»»» от 27 до 30
»»» от 30 до 35
»»» от 35 до 40
»»» от 40 до 44
»»» больше 45
Для души

Хокку дня
Тигра свирепого когти
Смелым друзьям не страшны-
Двум Рознблюмам и Кацу...

Афоризмы
В китайском языке 15 тысяч иероглифов. Не дай Бог попасть на их "Поле Чудес", бессмысленное и беспощадное

Фраза дня
Товарищ, пройдемте для выяснения наличности.

Дурацкие законы (информация предоставлена сайтом kurilka.com)
В Северной Дакоте (США) считается преступлением ложиться спать, не сняв ботинок.
В Китае закон разрешает поступать в университет только "умственно развитым людям".

И на закуску коротенький анекдот
- Девушка вы замужем?
- Нет перебиваюсь случайными связями.

Фотоприколы.
Начните день с хорошего настроения!
http://www.delphimaster.ru/cgi-bin/prikol.pl?id=25375366


На этом позвольте откланяться и пожелать вам удачного дня.
Искренне ваш, Алексей (merlin@delphimaster.ru)

Добро пожаловать на сайт -= Мастера DELPHI =- 

http://subscribe.ru/
http://subscribe.ru/feedback/
Адрес подписки
Отписаться

В избранное