On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
администратор




Пост N: 991
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.10.08 21:46. Заголовок: Как проверить существование файла на FTP ?


Вот и весь вопрос.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 49 , стр: 1 2 3 All [только новые]


администратор




Пост N: 993
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 13.10.08 07:50. Заголовок: Собственно разобралс..


Собственно разобрался;)
Одно но , если я точно не знаю какова длина имен файлов на ftp , то вместе с именем (после имени) лезет
куча хлама.......то ли у меня руки кривые то ли what32 такой.

ps
Юзал what32

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 997
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 13.10.08 16:30. Заголовок: Юзаю для доступа на ..


Юзаю для доступа на Ftp , библиотечку What32 , впрочем уже писал про это ;)
Такие функции как
FtpGetFile
FtpSetCurrentDirectory
InternetOpen
InternetConnect
FtpPutFile
FtpDeleteFile
работают достаточно быстро и нареканий нет.
А вот такая нужная вещь как FtpDirectory в которой отрабатывают функции FtpFindFirstFile и InternetFindNextFile
то работают быстро то тормозят на равном месте. Как это дело ускорить или возможно у кого есть нормальная
библиотека (иль сырцы) для доступа к FTP на Xharbour ?
Спасибо !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 539
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 16.10.08 16:50. Заголовок: Мне тоже одна задачк..


Мне тоже одна задачка нарисовалась для работы с FTP.

Думаю использовать contrib\hbcurl.
Вот, что это "чудо" позволяет

tool for transferring files with URL syntax, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS and FILE. curl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, kerberos...), file transfer resume, proxy tunneling and a busload of other useful tricks.

Если не все, то очень много.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1007
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.10.08 17:13. Заголовок: Петр Спасибо ! Сам ..


Петр
Спасибо !
Сам пробовал ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 541
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 16.10.08 17:51. Заголовок: Тестирую, вроде рабо..


Тестирую, вроде работает хорошо
К тому же я обнаружил, что если скачать libcurl.dll с поддержкой SSL, то путем нехитрых манипуляций можно получить как бонус crypto возможности - aes, blowfish, idea.
Иногда бывает полезно.


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1008
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.10.08 19:26. Заголовок: Петр Если не сложно..


Петр
Если не сложно , бо я не совсем въехал , покажи с нуля как получить список файлов текущей директории на Ftp с
помощью hbcurl.
Спасибо !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 542
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 16.10.08 19:47. Заголовок: Чуть не написал, см...


Чуть не написал, см. contrib\curl\test
Но потом вспомнил, что ты же xHarbour юзаешь. Посмотрел xHarbour - там порт очень обрезанный и пример такой же куцый..
Даже не понятно, как юзеры библиотеку собирать будут.

Пример (может и не заработать).

#include "hbcurl.ch" 
#include "common.ch"
#include "fileio.ch"

FUNCTION Main( cDL )
LOCAL curl
LOCAL info
LOCAL tmp
LOCAL tmp1
LOCAL f

LOCAL lVerbose := .F.

? curl_version()
? "INIT:", curl_global_init()

IF ! Empty( curl := curl_easy_init() )

DEFAULT cDL TO "ftp://ftp.cisco.com/"

/* Now let's download a dirlist to memory */

? curl_easy_setopt( curl, HB_CURLOPT_DOWNLOAD )
? curl_easy_setopt( curl, HB_CURLOPT_DIRLISTONLY )
? curl_easy_setopt( curl, HB_CURLOPT_URL, cDL )
? curl_easy_setopt( curl, HB_CURLOPT_SSL_VERIFYPEER, .F. )
? curl_easy_setopt( curl, HB_CURLOPT_SSL_VERIFYHOST, .F. )
? curl_easy_setopt( curl, HB_CURLOPT_DL_BUFF_SETUP )
? curl_easy_setopt( curl, HB_CURLOPT_PROGRESSBLOCK, {| nPos, nLen | a := CurGet(), DispOutAt( 11, 10, Str( ( nPos / nLen ) * 100, 6, 2 ) + "%" ), CurSet( a ) } )
? curl_easy_setopt( curl, HB_CURLOPT_NOPROGRESS, .F. )
? curl_easy_setopt( curl, HB_CURLOPT_VERBOSE, lVerbose )

? "DOWNLOAD DIRLIST TO STRING:", curl_easy_perform( curl )

? "RESULT 1: " + curl_easy_dl_buff_get( curl )
? curl_easy_setopt( curl, HB_CURLOPT_DL_BUFF_GET, @tmp )
? "RESULT 2: " + tmp

/* Cleanup session */

curl_easy_cleanup( curl )

ENDIF

curl_global_cleanup()

RETURN NIL

STATIC FUNCTION CurGet()
RETURN { Row(), Col() }

STATIC PROCEDURE CurSet( a )
SetPos( a[ 1 ], a[ 2 ] )
RETURN


P.S. HbCurl был изначально портирован в xHarbour и лишь потом в Harbour. Но был существенно переработан. Я думаю не составит труда портировать его обратно.
Бегло просмотрев исходник заметил, что hb_storclen_buffer нужно заменить на hb_storclenAdopt, а так вроде бы все должно быть нормально.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 543
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 16.10.08 21:07. Заголовок: Все оказалось очень ..


Все оказалось очень просто
Нужно скачать исходники Harbour
Если не хочется качать все и есть под рукой такая программа, как Download Master, то сначала выбираем функцию просмотра zip архива, выбираем нужные файлы:
hbcurl.c
hbcurl.ch
и пример ftp_uldl.prg и затем скачиваем.


Бросаем это в xHarbour\contrib\hbcurl (предварительно удалив все оттуда).
В hbcurl.c где-то после
#include "hbcurl.ch"
добавляем
#if defined( __XHARBOUR__ ) 
# define HB_FHANDLE FHANDLE
# define hb_retc_null() hb_retc( (char*) NULL )
# define hb_storclen_buffer hb_storclenAdopt
#endif


Компилируем библиотеку с помощью
make_b32.bat
@echo off 

set CURL_DIR=e:\extlib\curl
if not exist %CURL_DIR%\bin\libcurl.dll goto NODLL

if not exist .\lib md .\lib
if not exist .\obj md .\obj

if "%1" == "clean" goto CLEAN
if "%1" == "CLEAN" goto CLEAN

make -fmakefile.bc %1 %2 %3 >make_b32.log
if errorlevel 1 goto error
goto copy_files

:error
echo there is an error on make files
notepad make_b32.log
goto end

:clean

if exist lib\*.bak del .\lib\*.bak
if exist lib\*.def del .\lib\*.def
if exist lib\*.lib del .\lib\*.lib
if exist obj\*.obj del .\obj\*.obj
if exist *.log del *.log
goto End

:copy_files
impdef -a lib\libcurl.def %CURL_DIR%\bin\libcurl.dll
implib -a lib\libcurl.lib lib\libcurl.def

copy lib\*.lib ..\..\lib
copy *.ch ..\..\include

goto end

:NODLL

echo.
echo.Missing libcurl.dll, please download it
echo.Make aborted.
echo.

:end
if exist *.tds del *.tds
if exist *.map del *.map


makefile.bc
 
# makefile for Borland C/C++ 32 bits
# Building of hbcurl.lib

INCLUDE_DIR = ..\..\include;$(CURL_DIR)\include

OBJ_DIR = obj
LIB_DIR = lib

$(LIB_DIR)\hbcurl.lib : \
$(OBJ_DIR)\hbcurl.obj

$(OBJ_DIR)\hbcurl.obj : hbcurl.c

.c.obj:
bcc32 $(CLIBFLAGS) -c -O2 -I$(INCLUDE_DIR) -o$@ $<
tlib $(LIB_DIR)\hbcurl.lib -+$@,,



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1009
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.10.08 11:06. Заголовок: Петр пишет: Бросаем..


Петр пишет:

 цитата:
Бросаем это в xHarbour\contrib\hbcurl (предварительно удалив все оттуда).
В hbcurl.c где-то после
#include "hbcurl.ch"
добавляем

#if defined( __XHARBOUR__ )
# define HB_FHANDLE FHANDLE
# define hb_retc_null() hb_retc( (char*) NULL )
# define hb_storclen_buffer hb_storclenAdopt
#endif


Все сделал , во время сборки получаем
MAKE Version 5.2 Copyright (c) 1987, 2000 Borland
Error makefile.bc 11: Command syntax error
Error makefile.bc 13: Command syntax error
Error makefile.bc 15: Command syntax error
Error makefile.bc 16: Command syntax error
Error makefile.bc 16: Command syntax error
*** 5 errors during make ***


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1010
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.10.08 11:38. Заголовок: С этим разобрался. Т..


С этим разобрался.
Теперича получаем
Error E2209 hbcurl.c 55: Unable to open include file 'curl/curl.h'
Error E2209 hbcurl.c 56: Unable to open include file 'curl/types.h'
Error E2209 hbcurl.c 57: Unable to open include file 'curl/easy.h'
Error E2209 hbcurl.c 58: Unable to open include file 'curl/multi.h'

Где их брать эти .H ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 544
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 17.10.08 12:15. Заголовок: Ты curl скачал и уст..


Ты curl скачал и установил
set CURL_DIR=e:\extlib\curl

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1011
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.10.08 12:34. Заголовок: Петр пишет: Ты curl..


Петр пишет:

 цитата:
Ты curl скачал и установил


я скачал сырцы harbour , где качать curl ? :)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 545
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 17.10.08 12:42. Заголовок: Здесь..

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1012
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.10.08 13:12. Заголовок: Петр Спасибо , прав..


Петр
Спасибо , правда я и сам уже нашел.
Все собралось ! ;)

PS
Век живи , век учись ;)

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1013
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.10.08 13:33. Заголовок: Твой примерчик собра..


Твой примерчик собрался ;)
Однако получение списка файлов так же медленновато работает.......

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 546
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 17.10.08 13:57. Заголовок: Dima пишет: Однако ..


Dima пишет:

 цитата:
Однако получение списка файлов так же медленновато работает.......


Многое зависит от сервера..

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1014
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.10.08 14:09. Заголовок: Петр пишет: Многое ..


Петр пишет:

 цитата:
Многое зависит от сервера..


Таки да ;)
Проверил на своем FTP , получил список моментально.
А как проверить наличие файла по маске , ну скажем Z_*.zip.
Разумеется что я могу проанализировать полученный DIR , но все же интерестно , есть ли такое...

PS
И все же минус есть у curl , вместе с приложением нужно не забывать давать 5 dll файлов

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 547
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 17.10.08 14:31. Заголовок: Наверное есть такая ..


Наверное есть такая возможность, я еще просто не докопался

Это очень маленький минус. Во первых можно пользоваться инсталяторами и оно будет автоматически все упаковываться.
Во-вторых если не нужно к примеру SSL или ZIP, можно скачав сырцы перекомпилировать libcurl под свои нужды и использовать одну лишь libcurl.dll (около 400 kb). Но вдруг завтра тебе захочется узнать не только есть ли такой zip архив на сервере, но и узнать его содержимое и скачать определенный файл из архива - вот тут тебе zlib1.dll пригодится и т.д.
В-третьих ты можешь попробовать скомпилировать приложение с статической библиотекой libcurl.lib (нужны исходники).

Я статическую линковку не пробовал, но библиотеку перекомпилировал с помощью MinGW, Borland 5.8.2 и MSVC 8.0 без всяких проблем.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 548
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 17.10.08 14:36. Заголовок: Ну и совсем забыл, е..


Ну и совсем забыл, если завтра тебе будет нужно перенести приложение на Linux или HPUX - тебе не придется ничего менять, абсолютно.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1015
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.10.08 14:47. Заголовок: Петр Убедил !!! :s..


Петр
Убедил !!!
Придется привыкать к DLL .

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3099
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 15:28. Заголовок: Harbour 3.2 / Mingw ..


Harbour 3.2 / Mingw
Пытаюсь собрать hbcurl вот таким батником
 
set PATH=C:\MinGW\bin
set HB_INSTALL_PREFIX=c:\hb32mingw
set HB_DIR_CURL=c:\curl
c:\hb32mingw\bin\hbmk2 hbcurl.hbp


Получаю
C:\svn\harbour-trunk\harbour\contrib\hbcurl>c:\hb32mingw\bin\hbmk2 hbcurl.hbp
hbmk2: Building sub-project (level 2): hbcurls.hbp
hbmk2: Warning: Missing dependency: curl

что ему надо ? ;)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 828
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 15:43. Заголовок: Dima пишет: set HB_..


Dima пишет:

 цитата:
set HB_DIR_CURL=c:\curl

знаю, что надо вот так

SET HB_WITH_CURL=C:\curl\include

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3100
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 15:45. Заголовок: AlexMyr Та же ошибк..


AlexMyr
Та же ошибка

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 829
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 15:51. Заголовок: В папке hbcurl созда..


В папке hbcurl создал батник

SET HB_WITH_CURL=C:\curl\include
hbmk2 hbcurl.hbp

запустил, все норм (есть варнинг).

C:\dev\_git\core\contrib\hbcurl>hbmk2 hbcurl.hbp
hbmk2: Building sub-project (level 2): hbcurls.hbp
hbmk2: Dependency 'curl' found: C:\curl\include
hbmk2: Compiling...
hbmk2: Creating static library... libhbcurls.a
hbmk2: Dependency 'curl' found: C:\curl\include
hbmk2[hbcurl]: Warning: No import library sources were found.
hbmk2: Compiling Harbour sources...
Harbour 3.2.0dev (r1304222205)
Copyright (c) 1999-2013, http://harbour-project.org/
Compiling 'hbcurl.hbx'...
Lines 50, Functions/Procedures 1
Generating C source output to '.hbmk\win\mingw\hbcurl\hbcurl.c'... Done.
hbmk2: Compiling...
hbmk2: Creating static library... libhbcurl.a

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 830
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 15:58. Заголовок: Да, и cUrl брал тут ..


Да, и cUrl брал тут <http://curl.haxx.se/>

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3101
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 16:01. Заголовок: Начнем с начала. Как..


Начнем с начала.
Как собрать CURL из исходников под MINGW ?
Сырцы брал тут http://curl.haxx.se/snapshots/curl-7.30.1-20130425.zip

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 831
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 16:17. Заголовок: Зайти в папку curl и..


Зайти в папку curl и дать команду "mingw32-make mingw32"

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3102
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 16:25. Заголовок: AlexMyr пишет: Зайт..


AlexMyr пишет:

 цитата:
Зайти в папку curl и дать команду "mingw32-make mingw32"


mingw32-make не нашел такого
Сделал так c:\mingw\bin\make mingw32
Получил
C:\curl>c:\mingw\bin\make mingw32
c:/mingw/bin/make.EXE -C lib -f Makefile.m32
make.EXE[1]: Entering directory `C:/curl/lib'
gcc -I. -I../include -g -O2 -Wall -fno-strict-aliasing -DBUILDING_LIBCURL -c file.c
gcc: error: CreateProcess: No such file or directory
make.EXE[1]: *** [file.o] Error 1
make.EXE[1]: Leaving directory `C:/curl/lib'
make.EXE: *** [mingw32] Error 2

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3103
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 16:33. Заголовок: вот так заработало и..


вот так заработало из батника
set path=C:\MinGW\bin\
c:\mingw\bin\make mingw32

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 832
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 16:35. Заголовок: Я использую C:\..


Я использую
C:\>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/4.7.2/lto-wrapper.exe
Target: mingw32
Configured with: ../gcc-4.7.2/configure --enable-languages=c,c++,ada,fortran,obj
c,obj-c++ --disable-sjlj-exceptions --with-dwarf2 --enable-shared --enable-libgo
mp --disable-win32-registry --enable-libstdcxx-debug --disable-build-poststage1-
with-cxx --enable-version-specific-runtime-libs --build=mingw32 --prefix=/mingw
Thread model: win32
gcc version 4.7.2 (GCC)

и там есть стандартная make утилита mingw32-make

Dima пишет:

 цитата:
Сделал так c:\mingw\bin\make mingw32



Вот что напмсано в curl/docs/INSTALL
MingW32
-------

Make sure that MinGW32's bin dir is in the search path, for example:

set PATH=c:\mingw32\bin;%PATH%

then run 'mingw32-make mingw32' in the root dir.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 833
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 16:36. Заголовок: Dima пишет: вот так..


Dima пишет:

 цитата:
вот так заработало из батника

правильно, молодец.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3104
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 16:52. Заголовок: AlexMyr Cобралось в..


AlexMyr
Cобралось вроде , но hbcurl собрать не могу )))
Что за на фиг......
C:\svn\harbour-trunk\harbour\contrib\hbcurl>c:\hb32mingw\bin\hbmk2 hbcurl.hbp
hbmk2: Building sub-project (level 2): hbcurls.hbp
hbmk2: Warning: Missing dependency: curl

Батник
set PATH=C:\MinGW\bin
set HB_INSTALL_PREFIX=c:\hb32mingw
set HB_DIR_CURL=c:\curl\include
c:\hb32mingw\bin\hbmk2 hbcurl.hbp


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3105
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 16:57. Заголовок: ага ей строки не хва..


ага ей строки не хватало
set HB_WITH_CURL=c:\curl\include


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 834
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 16:57. Заголовок: set PATH=%PATH%;C:&#..


set PATH=%PATH%;C:\MinGW\bin;c:\hb32mingw\bin\
set HB_WITH_CURL=c:\curl\include
hbmk2 hbcurl.hbp

запускать из C:\svn\harbour-trunk\harbour\contrib\hbcurl

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3106
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 17:14. Заголовок: Да заработало , спас..


Да заработало , спасибо за помощь !
А как бы так обойтись без libcurl.dll , ну что бы она как бы встроена была в мой EXE ?

Я готов мириться с DLL от закрытых продуктов где исходники не предоставляются ,
таких как Abee PagesScirpt , Advantage DataBase Server.
Но тут ведь и исходники есть и вероятно что то можно с этим придумать ;)

Пробовал собирать приложение с библой HBCURLS , но все равно после запуска требует DLL

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3107
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.04.13 21:04. Заголовок: AlexMyr пишет: и та..


AlexMyr пишет:

 цитата:
и там есть стандартная make утилита mingw32-make



Не понял где ;)

C:\MinGW\bin>gcc.exe -v
Using built-in specs.
COLLECT_GCC=C:\MinGW\bin\gcc.exe
COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/i686-pc-mingw32/4.7.2/lto-wrapper.exe
Target: i686-pc-mingw32
Configured with: ../src/configure --prefix=/c/temp/gcc/dest --with-gmp=/c/temp/gcc/gmp --with-mpfr=/c/temp/gcc/mpfr --wi
th-mpc=/c/temp/gcc/mpc --enable-languages=c,c++ --with-arch=i686 --with-tune=generic --disable-libstdcxx-pch --disable-n
ls --disable-shared --disable-sjlj-exceptions --disable-win32-registry --enable-checking=release --enable-lto
Thread model: win32
gcc version 4.7.2 (GCC)

MINGW я брал уже готовый тут

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 835
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 25.04.13 21:54. Заголовок: Dima пишет: Не поня..


Dima пишет:

 цитата:
Не понял где ;)




Вот вывод dir c:\mingw\bin\min*.exe
Содержимое папки c:\mingw\bin

26.04.2012 03:31 45 568 mingw-get.exe
16.10.2012 16:45 11 776 mingw32-cc.exe
16.10.2012 16:45 11 776 mingw32-gcc-4.7.2.exe
16.10.2012 16:45 11 776 mingw32-gcc.exe
02.09.2012 04:42 219 662 mingw32-make.exe
5 файлов 300 558 байт


Dima пишет:

 цитата:
Сырцы брал тут http://curl.haxx.se/snapshots/curl-7.30.1-20130425.zip


Снова читал readme.md и вычитал, что нужно curl-devel, скачал http://curl.haxx.se/gknw.net/7.30.0/dist-w32/curl-7.30.0-devel-mingw32.zip
пересобрал harbour, в логе такая штука
hbmk2: Created import library: ..\lib\win\mingw\liblibcurl.a <= C:\curl\bin\libcurl.dll
т.е. заганяем все из .dll в .а
пример в hbcurl\tests\ собрался, но дома на висте падает, завтра на работе проверю на xp.

Dima пишет:

 цитата:
MINGW я брал уже готовый тут


я тут http://sourceforge.net/projects/mingw/files/latest/download?source=files

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3108
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 26.04.13 09:23. Заголовок: AlexMyr пишет: прим..


AlexMyr пишет:

 цитата:
пример в hbcurl\tests\ собрался


И у меня , вот только снова хочет DLL

зы
Hbcurl пересобрал с curl-devel

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 836
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 26.04.13 09:41. Заголовок: Пересобрал заново ha..


Пересобрал заново harbour с curl-devel, собрал пример

func main()
? "curl_version()"
? curl_version()
return nil

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

Dima пишет:

 цитата:
вот только снова хочет DLL

а что конкретно хочет, что выводит на экран?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3112
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 26.04.13 13:32. Заголовок: AlexMyr пишет: а чт..


AlexMyr пишет:

 цитата:
а что конкретно хочет, что выводит на экран?


Виндовое окошко в нем "Приложению не удалось запуститься , поскольку libcurl.dll не был найден"

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3113
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 26.04.13 13:54. Заголовок: Где бы почитать о фу..


Где бы почитать о функциях CURL да на русском языке ? Поиск в гугле нормального результата не дал.
Собственно не так много и надо.
Подключится к FTP
Установить активный или пассивный режим передачи
Получить LIST
Сменить директорию
Скачать файл
Закачать файл
Удалить файл
Переименовать файл
Отключиться от FTP

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 839
Зарегистрирован: 11.06.10
ссылка на сообщение  Отправлено: 26.04.13 15:16. Заголовок: На win98 тоже сказал..


На win98 тоже сказал что нет dll, положил след.
libcurl dll
libeay32 dll
libidn-11 dll
ssleay32 dll
zlib1 dll
начало работать.
На winxp черный экран и завершается, тоже положил dll-ки в папку с прогой, заработало.

Или в системе уже должен стоять дистр cUrl, или тягать за собой эти dll-ки. Или еще копать глубже.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3114
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 26.04.13 15:38. Заголовок: AlexMyr пишет: Или ..


AlexMyr пишет:

 цитата:
Или еще копать глубже



Достаточно. Бум тягать с собой libcurl.dll
Спасибо за тесты !

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 4180
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 21.08.14 10:23. Заголовок: Дошли рученки снова ..


Дошли рученки снова до HBCURL.
С получением LIST , вроде все понятно.
Получаю так (как по маске получить так и не понял)
 
#include "hbcurl.ch"
#include "common.ch"

FUNCTION Main( cDL )
LOCAL curl
LOCAL a


curl_global_init()

IF ! Empty( curl := curl_easy_init() )

DEFAULT cDL TO "ftp://194.77.77.77/"

*W_99^[sklad]#E3EA33012.zip

curl_easy_setopt( curl, HB_CURLOPT_DOWNLOAD )
curl_easy_setopt( curl, HB_CURLOPT_DIRLISTONLY)
curl_easy_setopt( curl, HB_CURLOPT_USERPWD, "userok:parolik" )
curl_easy_setopt( curl, HB_CURLOPT_URL, cDL )
curl_easy_setopt( curl, HB_CURLOPT_DL_BUFF_SETUP )
curl_easy_setopt( curl, HB_CURLOPT_PROGRESSBLOCK, {| nPos, nLen | a := CurGet(), DispOutAt( 11, 10, Str( ( nPos / nLen ) * 100, 6, 2 ) + "%" ), CurSet( a ) } )
curl_easy_setopt( curl, HB_CURLOPT_NOPROGRESS, .f. )
curl_easy_perform( curl ) //DOWNLOAD DIRLIST TO STRING
? curl_easy_dl_buff_get( curl )
curl_easy_cleanup( curl )

ENDIF

curl_global_cleanup()

RETURN NIL

STATIC FUNCTION CurGet()
RETURN { Row(), Col() }

STATIC PROCEDURE CurSet( a )
SetPos( a[ 1 ], a[ 2 ] )

RETURN



Не могу разобраться как скачать файл с FTP.
Может кто то показать ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 4181
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 21.08.14 15:18. Заголовок: Методом тыка разобра..


Методом тыка разобрался.
Стал разбираться с заливкой на FTP.
Файл наливается но по размеру становится ровно в 2 раза больше .
Вот код для заливки (только часть что касается заливки)
Что не так делаю ?
Проверял на текстовых файлах , там все нормально.

 
? curl_easy_setopt( curl, HB_CURLOPT_UPLOAD )
curl_easy_setopt( curl, HB_CURLOPT_USERPWD, "login:passik" )
? curl_easy_setopt( curl, HB_CURLOPT_URL, cdl+"/w.zip" )
? curl_easy_setopt( curl, HB_CURLOPT_UL_FILE_SETUP,hb_CurDrive()+":\"+CurDir()+"\"+"w.zip" )
? curl_easy_setopt( curl, HB_CURLOPT_INFILESIZE, hb_FSize( hb_CurDrive()+":\"+CurDir()+"\"+"w.zip" ) ), hb_FSize( hb_CurDrive()+":\"+CurDir()+"\"+"w.zip" )
? curl_easy_setopt( curl, HB_CURLOPT_PROGRESSBLOCK, {| nPos, nLen | a := CurGet(), hb_DispOutAt( 10, 10, Str( ( nPos / nLen ) * 100, 6, 2 ) + "%" ), CurSet( a ) } )
? curl_easy_setopt( curl, HB_CURLOPT_NOPROGRESS, 0 )
? curl_easy_setopt( curl, HB_CURLOPT_POSTQUOTE, { "RNFR " + "w.zip", "RNTO " + "w2.zip" } )

? "UPLOAD FILE:", curl_easy_perform( curl )



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 4182
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 21.08.14 15:30. Заголовок: Dima пишет: Стал ра..


Dima пишет:

 цитата:
Стал разбираться с заливкой на FTP.


Проехали , мой глюк.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 4183
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 21.08.14 16:25. Заголовок: При загрузке файла с..


При загрузке файла с ФТП если в имени есть символы # или ^ или [ или ] или все вместе то выдается ошибка 78
Какой опцией LIBCURL это можно починить ?


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 4184
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 22.08.14 14:27. Заголовок: А есть ли в LIBCURL ..


А есть ли в LIBCURL аналог опции --globoff из CURL.EXE ?

Гугл на запрос +libcurl +globoff молчит как партизан........

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 272
Зарегистрирован: 03.12.08
ссылка на сообщение  Отправлено: 22.12.15 15:40. Заголовок: Подскажите последова..


Подскажите последовательность действий чтоб сгенерировать LIBCURL на машине с WIN_XP . Borland C 5.5 , MiniGui .
Чёт я запутался при установке всех пакетов и т д ....

У меня всё выглядит так :
C:\Borland\BCC55

C:\MiniGUI\.... Тут MiniGui
C:\MiniGUI\HARBOUR Тут Harbour






Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 49 , стр: 1 2 3 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 253
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет