FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour MSVC 2017 Try
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MSVC 2017 Try
Posted: Sun Apr 16, 2017 07:10 PM

Copia aqui el c贸digo de la funci贸n FTP_DIR2DIRFTP()

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 563
Joined: Sun Oct 09, 2005 07:23 PM
Re: MSVC 2017 Try
Posted: Sun Apr 16, 2017 07:53 PM
Este es el c贸digo C de esa funci贸n:

Code (fw): Select all Collapse
/* Imprime en un fichero un listado con solo los nombres de archivos en un servidor FTP.
   Adem谩s devuelve el 煤ltimo nombre del listado obtenido.
   Salida a DIRFTP.DAT: Lista simple, solo con el nombre de los ficheros presentes en 
     el directorio FTP.*/
HB_FUNC( FTP_DIR2DIRFTP )  
{   
    WIN32_FIND_DATA ultdir;
    WIN32_FIND_DATA dirtemp;
    HINTERNET FtpHandle;
    
    FILE *fichero = hb_fopen( "DIRFTP.DAT", "w" );  //FILE *fichero= fopen( "DIRFTP.DAT", "w" );

    FtpHandle = FtpFindFirstFile( ( HINTERNET ) hb_parnl( 1 ), hb_parc( 2 ), &dirtemp, hb_parnl( 3 ), hb_parnl( 4 ) ) ;
    
    if ( FtpHandle ) {
           ultdir = dirtemp;
           
           if( fichero ) {
            //fprintf( fichero, "%s\t%X\t%X\n", ultdir.cFileName, ultdir.ftLastWriteTime.dwHighDateTime, ultdir.ftLastWriteTime.dwLowDateTime );
            fprintf( fichero, "%s\n", ultdir.cFileName );
           }
           
           // Sigue buscando por el directorio FTP
           while ( InternetFindNextFile( FtpHandle, &dirtemp ) ) {
            ultdir = dirtemp;
            if( fichero ) {
               //fprintf( fichero, "%s\t%X\t%X\n", dirtemp.cFileName, dirtemp.ftLastWriteTime.dwHighDateTime, dirtemp.ftLastWriteTime.dwLowDateTime );
               fprintf( fichero, "%s\n", ultdir.cFileName );
            }
           }
           
           // Devuelve al PRG el nombre del 煤ltimo fichero creado/modificado en el directorio FTP.
           hb_retc( ultdir.cFileName );
         }
      else
         //MessageBox( GetActiveWindow(), "No ha encontrado ning煤n fichero", "Cero Ficheros", 0x40 );
         hb_retc( "" );
         
    InternetCloseHandle( FtpHandle );
    if( fichero ) {
     fclose(fichero);
    }
}
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MSVC 2017 Try
Posted: Sun Apr 16, 2017 09:31 PM

A帽ade estas l铆neas antes de HB_FUNC( FTP_DIR2DIRFTP )

extern "C" {
struct _iobuf * hb_fopen( char const *, char const * );
}

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 563
Joined: Sun Oct 09, 2005 07:23 PM
Re: MSVC 2017 Try
Posted: Mon Apr 17, 2017 08:52 AM
El compilador sigue sin estar de acuerdo, estos son los errores:
La l铆nea 526 de internet.prg es lo nuevo que me has indicado que ponga, esto es, struct _iobuf * hb_fopen(char const *, char const *);

internet.prg(526): note: vea la declaraci垄n de 'hb_fopen'
internet.prg(538): warning C4312: 'conversi垄n de tipo': conversi垄n de 'long' a 'HINTERNET' de mayor tama陇o
internet.prg(597): warning C4312: 'conversi垄n de tipo': conversi垄n de 'long' a 'HINTERNET' de mayor tama陇o
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384

Copyright (C) Microsoft Corporation. All rights reserved.

wintpv.obj : error LNK2019: s铆mbolo externo "struct _iobuf * __cdecl hb_fopen(char const *,char const *)" (?hb_fopen@@YAPEAU_iobuf@@PEBD0@Z) sin resolver al que se hace referencia en la funci贸n HB_FUN_FTP_DIR2DIRFTP
FiveHC64.lib(FWPNG.obj) : error LNK2019: s铆mbolo externo png_init_io sin resolver al que se hace referencia en la funci贸n save_png_to_file
wintpv_64.EXE : fatal error LNK1120: 2 externos sin resolver
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MSVC 2017 Try
Posted: Mon Apr 17, 2017 09:24 AM

Has copiado exactamente estas l铆neas ?

extern "C" {
struct _iobuf * hb_fopen( char const *, char const * );
}

antes de la declaraci贸n de la funci贸n ?

Por favor, copia aqui el c贸digo

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: MSVC 2017 Try
Posted: Mon Apr 17, 2017 09:26 AM

Que ficheros de cabecera usas para el c贸digo en C ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 563
Joined: Sun Oct 09, 2005 07:23 PM
Re: MSVC 2017 Try
Posted: Mon Apr 17, 2017 02:18 PM
Son los siguientes:

Code (fw): Select all Collapse
// Para compilar con Borland BCC582, BCC63 y para VSC2013.
#include "warningsVSC2013.h"

#include "ws2tcpip.h"  //For WinSock 2 library: ws2_32.lib

#include "wininet.h"
#include "windows.h"

#include "hbapi.h"
#include "stdio.h"
#include "WinBase.h"

Continue the discussion