На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Соблюдайте общие правила форума
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Указывайте точные версии Delphi и используемых сетевых библиотек.

Не приветствуется поднятие старых тем. Если ваш вопрос перекликается со старой темой, то для вопроса лучше создать новую тему, а старую указать в первом сообщении с описанием взаимосвязи.

Внимание:
попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...

Полезные ссылки:
user posted image MSDN Library user posted image FAQ раздела user posted image Поиск по разделу user posted image Как правильно задавать вопросы


Выразить свое отношение к модераторам раздела можно здесь: user posted image Krid, user posted image Rouse_

Модераторы: Krid, Rouse_
Страницы: (2) [1] 2  все  ( Перейти к последнему сообщению )  
> прокси
    Как мне подключиться к прокси серверу, скачать через него что-нибудь и отключиться от него?
      что именно скачать ?
        Файл или, лучше, часть файла
          По по ftp c аудификацией или по http ?
            По http.
              ExpandedWrap disabled
                uses
                 Psock, NMHttp;
                 
                vaR
                    NMHTTP1: TNMHTTP;
                begin
                  NMHTTP1:= TNMHTTP.Create(nil);
                  NMHTTP1.Proxy:='123.123.123.123';
                  NMHTTP1.ProxyPort:=80;
                  //try
                NMHTTP1.InputFileMode:=true;
                NMHTTP1.Body:='C:\hard_porno.gif';
                NMHTTP1.Header:='c:\hard_porno_Header.txt';
                NMHTTP1.Get('http://spb.rol.ru/images/rol3l_rollogo2.gif');
                //except
                //end;
                 
                showmessage('OK');
                end.


              что можно сказать девушке по телефону чтобы познакомится ( но чтоб она не повесила трубку )
              ps девушка рекламирует косметику.....
              Сообщение отредактировано: Mischka -
                Это целый файл, а как мне взять его часть?
                  Цитата (Гость jam-jam @ 25.11.03, 18:08)
                  Это целый файл, а как мне взять его часть?

                  Както можно ( но вероятно тогда прокси пролетит ) иши нужные апи
                    Апишек то много, где искать то, что мне надо?
                      А через компоненты ни как не получиться?
                        Вот прикольная статейка с работающим кодом _)))





                        Получение файла из сети

                        10 дек 2002 (вторник), 10:35:46


                        (Перевод одноимённой статьи с сайта delphi.about.com )

                        Обычно при разработке приложений, которые планируется в дальнейшем обновлять
                        и усовершенствовать, основные модули хранятся в виде пакетов (Package) или библиотек DLL.
                        В настоящее время Internet предоставляет возможность без особых усилий осуществлять
                        обновление этих модулей. Поэтому добавление к Вашему приложению функции авто-обновления,
                        является наилучшим способом для обновления приложения.

                        Давайте посмотрим, как реализовывается данный механизм в любом FTP приложении.

                        Delphi предоставляет нам полный доступ к WinInet API (wininet.pas), который можно использовать
                        для соединения и получения файлов с веб-сайта, который использует
                        либо Hypertext Transfer Protocol (HTTP) либо File Transfer Protocol (FTP).
                        Например, мы можем использовать функции из WinInet API для: добавления FTP браузера
                        в любое приложение, создания приложения, которое автоматически скачивает файлы с общедоступных
                        FTP серверов или поиска Internet сайтов, ссылающихся на графику и скачивать только графику.

                        Функция GetInetFile

                        uses Wininet;

                        function GetInetFile
                        (const fileURL, FileName: String): boolean;
                        const BufferSize = 1024;
                        var
                        hSession, hURL: HInternet;
                        Buffer: array[1..BufferSize] of Byte;
                        BufferLen: DWORD;
                        f: File;
                        sAppName: string;
                        begin
                        Result:=False;
                        sAppName := ExtractFileName(Application.ExeName);
                        hSession := InternetOpen(PChar(sAppName),
                        INTERNET_OPEN_TYPE_PRECONFIG,
                        nil, nil, 0);
                        try
                        hURL := InternetOpenURL(hSession,
                        PChar(fileURL),
                        nil,0,0,0);
                        try
                        AssignFile(f, FileName);
                        Rewrite(f,1);
                        repeat
                        InternetReadFile(hURL, @Buffer,
                        SizeOf(Buffer), BufferLen);
                        BlockWrite(f, Buffer, BufferLen)
                        until BufferLen = 0;
                        CloseFile(f);
                        Result:=True;
                        finally
                        InternetCloseHandle(hURL)
                        end
                        finally
                        InternetCloseHandle(hSession)
                        end
                        end;



                        Обратите внимание: Чтобы обеспечить некоторую визуальную обратную связь для пользователя,
                        Вы можете добавить строчку наподобие FlashWindow(Application.Handle,True) в тело блока
                        " повторить/до тех пор" (repeat/until). Вызов FlashWindow API высвечивает заголовок
                        Вашего имени приложений в панели задач.

                        Использование
                        Для вызова функции GetInetFile можно использовать следующий код:


                        var FileOnNet, LocalFileName: string
                        begin
                        FileOnNet:=
                        'http://delphi.about.com/library/forminbpl.zip';
                        LocalFileName:='File Downloaded From the Net.zip'

                        if GetInetFile(FileOnNet,LocalFileName)=True then
                        ShowMessage('Download successful')
                        else
                        ShowMessage('Error in file download')

                        end;



                        Данный код запрашивает файл 'forminbpl.zip' с сайта, скачивает его, и сохраняет его как
                        'File Downloaded From the Net.zip'.

                        Обратите внимание: В зависимости от версии Delphi,
                        Вы можете использовать различные компоненты, которые можно найти на Интернет страницах,
                        посвещённых VCL и, которые можно использовать для упрощения создания приложений
                        (например FTP компонент, необходимый для TNMFTP, находящийся на странице FastNet VCL).



                        Сонг еше както подсказал апю
                        Размер вернёт функция FtpFindFirstFile()



                          Всё это хорошо, только я не догоняю где указывать проге с какого байта в файле качать. blink.gif
                            функция InternetSetFilePointer
                              Цитата

                              функция InternetSetFilePointer


                              А какие у неё парамерты и что она должна вернуть.

                              Как я понимаю, собственно за скачивание отвечает
                              Цитата

                              InternetReadFile(hURL, @Buffer,
                              SizeOf(Buffer), BufferLen);
                              BlockWrite(f, Buffer, BufferLen)


                              И куда тут подставлять InternetSetFilePointer?
                                Цитата (Гость jam-jam @ 30.11.03, 06:11)
                                И куда тут подставлять InternetSetFilePointer?

                                В яндекс
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0377 ]   [ 16 queries used ]   [ Generated: 27.04.24, 17:04 GMT ]