ace32 con msvc

ace32 con msvc

Postby hgarcia » Sat Feb 27, 2010 5:09 am

Bueno el cambio siempre es frustrante al principio, habiendo podido compilar mis fuentes de fivewin, mis módulos de C y después de modificar el RC para sacar los gráficos que tenía como código fuente para dejarlos solo como llamados a archivos ahora me encuentro conque al momento de enlazar y agregar ace32.lib envía un error de archivo dañado o no compatible.
Me dirán que vuelva a generar el ace32.lib haciendo: implib ace32.lib ace32.dll lo cual funciona perfectamente para Borland pero Sorpresa! no funciona con MSVC. De seguro habrá más de alguno que me diga pues para que te cambias, pues el asunto es que si uso el compilador de Microsoft la transición a WIn64 es más sencilla (borland no genera código de 64 bits, bueno el bcc55) e incluso para usar FWPCC es necesario este compilador, por lo que espero que una alma caritativa me ayude a resolver este problema. Necesito ACE32.LIB para MSVC y no lo puedo generar via ace32.DLL


Gracias por su ayuda
Héctor García
México, D.F.
hgarcia
 
Posts: 33
Joined: Thu Aug 10, 2006 12:23 pm
Location: México D.F

Re: ace32 con msvc

Postby Antonio Linares » Sat Feb 27, 2010 9:42 am

Héctor,

Primero tienes que generar el fichero DEF a partir de la DLL:
Code: Select all  Expand view

c:\bcc55\bin\impdef.exe ace32.def ace32.dll
 

Y a continuación usando lib.exe de Microsoft generas la LIB:
Code: Select all  Expand view

lib.exe /DEF:ace32.def  /OUT:ace32.lib
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41331
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ace32 con msvc

Postby hgarcia » Sat Feb 27, 2010 3:57 pm

Bien se pudo generar la lib pero los mensajes que envía son como los siguientes:
Code: Select all  Expand view

Fivehcm.lib(BRUSHES.obj) : error LNK2019: símbolo externo __imp__AlphaBlend@44 sin resolver al que se hace referencia en la función _HB_FUN_ABPAINT
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsSetServerType@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETSERVERTYPE
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsSetDateFormat@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETDATEFORMAT
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsSetDateFormat@4 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetDateFormat@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETDATEFORMAT
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsGetDateFormat@8 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsSetEpoch@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETEPOCH
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsSetEpoch@4 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetEpoch@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETEPOCH
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsApplicationExit@0 sin resolver al que se hace referencia en la función _HB_FUN_ADSAPPLICATIONEXIT
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsApplicationExit@0 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsIsServerLoaded@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSISSERVERLOADED
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetConnectionType@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSGETCONNECTIONTYPE
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsUnlockRecord@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSUNLOCKRECORD
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsUnlockRecord@8 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetTableConnection@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSGETTABLECONTYPE
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetServerTime@24 sin resolver al que se hace referencia en la función _HB_FUN_ADSGETSERVERTIME
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsIsTableLocked@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSISTABLELOCKED
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsIsRecordLocked@12 sin resolver al que se hace referencia en la función _HB_FUN_ADSISRECORDLOCKED
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsIsRecordLocked@12 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetTableCharType@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSGETTABLECHARTYPE
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsSetDefault@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETDEFAULT
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsSetDefault@4 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetDefault@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETDEFAULT
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsSetSearchPath@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETSEARCHPATH
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsSetSearchPath@4 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetSearchPath@8 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETSEARCHPATH
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsShowDeleted@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETDELETED
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsShowDeleted@4 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetDeleted@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETDELETED
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsSetExact@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETEXACT
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsSetExact@4 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsGetExact@4 sin resolver al que se hace referencia en la función _HB_FUN_ADSSETEXACT
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsBinaryToFile@12 sin resolver al que se hace referencia en la función _HB_FUN_ADSBLOB2FILE
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsBinaryToFile@12 sin resolver
rddads.lib(adsfunc.obj) : error LNK2019: símbolo externo _AdsFileToBinary@16 sin resolver al que se hace referencia en la función _HB_FUN_ADSFILE2BLOB
rddads.lib(ads1.obj) : error LNK2001: símbolo externo _AdsFileToBinary@16 sin resolver
 

incluyo uno que tiene que ver con botones imp_alpha por otr lado mis conocimientos en C no han mejorado asi que si me pueden ayudar con este otro mensaje

Code: Select all  Expand view

D:\frameworkh\chb\SCROLL.C(56) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(84) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(110) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(124) : error C3861: '_reta': no se encontr¢ el identificador
D:\frameworkh\chb\SCROLL.C(137) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(149) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
 

y el fuente es:
Code: Select all  Expand view

// Modificado por José - para desplegar las barras de scroll proporcionales (tipo W95/98/2000)
// Modified by Manuel Mercado for TSBrowse, last update: February 27th, 2002

#include <WinTen.h>   // set proper path if needed
#include <Windows.h>
#include <ClipApi.h>  // set proper path if needed

#ifndef __FLAT__
#ifndef __HARBOUR__

   typedef struct
   {
      DWORD cbSize ;
      DWORD fMask ;
      long  nMin ;
      long  nMax ;
      DWORD nPage ;
      long  nPos ;
      long  nTrackPos ;
   } SCROLLINFO ;
   typedef SCROLLINFO FAR * LPSCROLLINFO ;

    #define SIF_RANGE           1
    #define SIF_PAGE            2
    #define SIF_POS             4
    #define SIF_DISABLENOSCROLL 8
   #define SIF_TRACKPOS       16
#endif
#endif

//----------------------------------------------------------------------------//

static BOOL SetScrInfo( HWND hWnd, int nScrollBar, LPSCROLLINFO si, BOOL lRedraw)
{
   #ifndef __HARBOUR__
      typedef BOOL ( WINAPI * FN )( HWND, int, LPSCROLLINFO, BOOL ) ;

      FN p = ( FN ) GetProcAddress( GetModuleHandle( "USER" ), "SetScrollInfo" ) ;

      if( p )
         return ( p( ( HWND ) hWnd, nScrollBar, si, lRedraw ) ) ;
      else
         return ( FALSE ) ;
   #else
      return SetScrollInfo( hWnd, nScrollBar, si, lRedraw ) ;
   #endif
}

//----------------------------------------------------------------------------//

#ifdef __HARBOUR__
   HB_FUN_SETSCROLLRANGE( PARAMS ) // ( hWnd, nFlags, nMin, nMax, lRepaint, lDisable, l32Bit )
#else
   CLIPPER SETSCROLLR( PARAMS )    // ANGE()
#endif
 [b]línea 56[/b] {
   SCROLLINFO  si ;

   si.cbSize = sizeof( si ) ;
   si.fMask  = SIF_RANGE ;
   si.nMin   = _parni( 3 ) ;
   si.nMax   = _parni( 4 ) ;

   if (_parl(6))
      si.fMask = SIF_RANGE + SIF_DISABLENOSCROLL ;

   if (_parl(7))
      _retl( SetScrInfo( ( HWND ) _parnl( 1 ), _parni( 2 ), &si, _parl( 5 ) ) ) ;
   else                                          // NT does not support SetScrollInfo() API function
      _retni( SetScrollRange( ( HWND ) _parnl( 1 ),        // its hWnd
                                      _parni( 2 ),         // Scroll Bar flags
                                      _parni( 3 ),         // Min
                                      _parni( 4 ),         // Max
                                      _parl( 5 ) ) ) ;     // ReDraw
}

//----------------------------------------------------------------------------//

#ifdef __HARBOUR__
   HB_FUN_SETSCROLLPOS( PARAMS ) // ( hWnd, nFlags, nPos, lRepaint, lDisable, l32Bit )
#else
   CLIPPER SETSCROLLP( PARAMS )  // OS
#endif
{
   SCROLLINFO si;

   si.cbSize = sizeof( si );
   si.fMask  = SIF_POS;
   si.nPos   = _parni( 3 );

   if (_parl(5))
      si.fMask = SIF_POS + SIF_DISABLENOSCROLL ;

   if ( _parl( 6 ) )
      _retl( SetScrInfo( ( HWND ) _parnl( 1 ), _parni( 2 ), &si, _parl( 4 ) ) ) ;
   else                                               // NT does not support SetScrollInfo() API function
      _retl( SetScrollPos( ( HWND ) _parnl( 1 ),     // its hWnd
                                    _parni( 2 ),     // Scroll Bar flags
                                    _parni( 3 ),     // new Position
                                    _parl( 4 ) ) ) ; // repaint
}

//----------------------------------------------------------------------------//

#ifdef __HARBOUR__
   HB_FUN_GETSCROLLRANGE( PARAMS ) // ( hWnd, nFlags )
#else
   CLIPPER GETSCROLLR( PARAMS )   // ANGE
#endif
{
   int iMin = 0, iMax = 0 ;

   #ifdef __FLAT__
      #ifndef __HARBOUR__
         #define _storni( x, y, z ) STORNI( x, params, y, z )
      #endif
   #endif

   GetScrollRange( ( HWND ) _parnl( 1 ),  // its hWnd
                   _parni( 2 ),           // Scroll bar flags
                   &iMin,
                   &iMax ) ;

[b]línea 124[/b]   _reta( 2 ) ;                            // { nMin, nMax }

   _storni( iMin, -1, 1 ) ;
   _storni( iMax, -1, 2 ) ;
}

//----------------------------------------------------------------------------//

#ifdef __HARBOUR__
   HB_FUN_GETSCROLLPOS( PARAMS ) // ( hWnd, nFlags )
#else
   CLIPPER GETSCROLLP( PARAMS ) // OS
#endif
{
   _retni( GetScrollPos( ( HWND ) _parnl( 1 ),     // its hWnd
                         _parni( 2 ) ) ) ;         // Scroll bar flags
}

//----------------------------------------------------------------------------//

#ifdef __HARBOUR__
   HB_FUN_SETSCROLLINFO( PARAMS ) // ( hWnd, nFlags, nSize, lRedraw, lShowDisabled )
#else
   CLIPPER SETSCROLLI( PARAMS )   // NFO()
#endif
{
   SCROLLINFO si;

   si.cbSize = sizeof( si );
   si.fMask  = SIF_PAGE ;
   si.nPage  = _parni( 3 );

   if ( _parl( 5 ) )
      si.fMask += SIF_DISABLENOSCROLL ;

   _retl( SetScrInfo( ( HWND ) _parnl( 1 ), _parni( 2 ), &si, _parl( 4 ) ) ) ;
}

//----------------------------------------------------------------------------//
 


Gracias nuevamente
Héctor García
México, D.F.
hgarcia
 
Posts: 33
Joined: Thu Aug 10, 2006 12:23 pm
Location: México D.F

Re: ace32 con msvc

Postby Antonio Linares » Sat Feb 27, 2010 7:55 pm

Héctor,

Parece que estas usando una versión de ace32.dll más antigua que la que necesita rddads.lib. Puedes actualizar a una versión más reciente de ace32.dll ? En caso negativo, tendrias que construir una versión de rddads.lib para la versión de ace32.dll que tienes.

Respecto al nuevo fichero en C que quieres compilar, cambia todos los _parni por hb_parnl y de igual forma cambia todos los _ret... por hb_ret...
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41331
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ace32 con msvc

Postby hgarcia » Sun Feb 28, 2010 4:47 am

Para el caso de ace32 estoy usando la versión 9.10 la más reciente y supongo que para generar rddads.lib basta con recompilar los módulos y generar la lib, cosa que hice pero sigue sin funcionar.
Por lo que respecta al otro problema con los módulos C hice los cambios de _ret por hb_ret y continúa el problema alguna otra sugerencia?

Gracias
Héctor García
México, D.F.
hgarcia
 
Posts: 33
Joined: Thu Aug 10, 2006 12:23 pm
Location: México D.F

Re: ace32 con msvc

Postby Antonio Linares » Sun Feb 28, 2010 10:21 am

Héctor,

En el fichero .DEF que generastes comprueba, por ejemplo, si existe: _AdsSetServerType@4

Que código tienes exactamente en la línea SCROLL.C(56) ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41331
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ace32 con msvc

Postby hgarcia » Sun Feb 28, 2010 8:53 pm

Creo que voy avanzando en algunas cosas encontré un modulo ace32.c como contribución de de xharbour que interactúa con ace32.dll y con eso se puede generar el RDDADS.LIB pero al compilar el módulo volvió a decirme el compilador C que mis conocimientos no han mejorado mucho en estos días así que pongo el código y el error
Code: Select all  Expand view

static FARPROC Ace32_GetProcAddress( char* szFuncName )
{
   if ( !hModule )
      hModule = LoadLibrary( "ace32.dll" );

   if ( hModule )
   {
      FARPROC pFunc = GetProcAddress( hModule, szFuncName );

      if ( pFunc )
      {
         return pFunc;
      }
      else
      {
         char __szError[256];
         hb_snprintf( __szError, sizeof( __szError ), "Cannot find function address: %s", szFuncName );
         MessageBox( NULL, __szError, szFuncName, MB_ICONSTOP );
         return NULL;
      }
   }
   else
   {
      char __szError[256];
      hb_snprintf( __szError, sizeof( __szError ), "Cannot load ace32.dll" );
      MessageBox( NULL, __szError, "Error Loading DLL", MB_ICONSTOP );
      return NULL;
   }
}
 UNSIGNED32 ENTRYPOINT AdsSetFieldRaw( ADSHANDLE hObj, UNSIGNED8 *pucFldName, UNSIGNED8 *pucBuf, UNSIGNED32 ulLen )
{
[b]linea 93[/b]   static ADSSETFIELDRAW_PTR pFunc = NULL;

   if ( !pFunc )
      pFunc = (ADSSETFIELDRAW_PTR) Ace32_GetProcAddress( "AdsSetFieldRaw" );

   return ( pFunc ? pFunc( hObj, pucFldName, pucBuf, ulLen  ) : 0 );
}

UNSIGNED32 ENTRYPOINT AdsDeleteFile( ADSHANDLE hConnection, UNSIGNED8* pucFileName )
{
   static ADSDELETEFILE_PTR pFunc = NULL;

   if ( !pFunc )
      pFunc = (ADSDELETEFILE_PTR) Ace32_GetProcAddress( "AdsDeleteFile" );

   return ( pFunc ? pFunc( hConnection, pucFileName ) : 0 );
}

UNSIGNED32 ENTRYPOINT AdsGetFieldRaw( ADSHANDLE hTbl, UNSIGNED8 *pucFldName, UNSIGNED8 *pucBuf, UNSIGNED32 *pulLen )
{
   static ADSGETFIELDRAW_PTR pFunc = NULL;

   if ( !pFunc )
      pFunc = (ADSGETFIELDRAW_PTR) Ace32_GetProcAddress( "AdsGetFieldRaw" );

   return ( pFunc ? pFunc( hTbl, pucFldName, pucBuf, pulLen  ) : 0 );
}

 

el error es:
Code: Select all  Expand view

D:\harbour-2.0.0\contrib\rddads\ace32.c(93) : error C2146: error de sintaxis : falta ';' delante del identificador 'pFunc'
D:\harbour-2.0.0\contrib\rddads\ace32.c(93) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\harbour-2.0.0\contrib\rddads\ace32.c(93) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(95) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(96) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(96) : error C2146: error de sintaxis : falta ';' delante del identificador 'Ace32_GetProcAddress'
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(98) : error C2065: 'pFunc' : identificador no declarado
D:\harbour-2.0.0\contrib\rddads\ace32.c(118) : error C3861: 'pFunc': no se encontr¢ el identificador
 
Héctor García
México, D.F.
hgarcia
 
Posts: 33
Joined: Thu Aug 10, 2006 12:23 pm
Location: México D.F

Re: ace32 con msvc

Postby Antonio Linares » Sun Feb 28, 2010 9:06 pm

Héctor,

Falta definir ADSSETFIELDRAW_PTR, de ahi los errores.

En la carpeta en donde está ace32.c busca un fichero .h en donde esté definido ADSSETFIELDRAW_PTR y copia esa definición al comienzo de ace32.c ó bien añade #include nombre_del_fichero_que_contiene_ADSSETFIELDRAW_PTR
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41331
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: ace32 con msvc

Postby hgarcia » Mon Mar 01, 2010 12:44 pm

muy bien parece que hasta aqui ya quedó lo que tiene que ver con ads ahora me quedan otros problemas con módulos C
Code: Select all  Expand view

#ifdef __HARBOUR__
   HB_FUN_SETSCROLLRANGE( PARAMS ) // ( hWnd, nFlags, nMin, nMax, lRepaint, lDisable, l32Bit )
#else
   CLIPPER SETSCROLLR( PARAMS )    // ANGE()
#endif
{   //linea 56
   SCROLLINFO  si ;

   si.cbSize = sizeof( si ) ;
   si.fMask  = SIF_RANGE ;
   si.nMin   = hb_parni( 3 ) ;
   si.nMax   = hb_parni( 4 ) ;

   if (hb_parl(6))
      si.fMask = SIF_RANGE + SIF_DISABLENOSCROLL ;

   if (hb_parl(7))
      hb_retl( SetScrInfo( ( HWND ) hb_parnl( 1 ), hb_parni( 2 ), &si, hb_parl( 5 ) ) ) ;
   else                                          // NT does not support SetScrollInfo() API function
      hb_retl( SetScrollRange( ( HWND ) hb_parnl( 1 ),        // its hWnd
                                      hb_parni( 2 ),         // Scroll Bar flags
                                      hb_parni( 3 ),         // Min
                                      hb_parni( 4 ),         // Max
                                      hb_parl( 5 ) ) ) ;     // ReDraw
}[b] //linea 75[/b]
 

Code: Select all  Expand view

D:\frameworkh\chb\SCROLL.C(56) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(75) : warning C4508: 'HB_FUN_SETSCROLLRANGE' : la funci¢n debe devolver un valor; se supone que el tipo de valor devuelto es 'void'
D:\frameworkh\chb\SCROLL.C(84) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(101) : warning C4508: 'HB_FUN_SETSCROLLPOS' : la funci¢n debe devolver un valor; se supone que el tipo de valor devuelto es 'void'
D:\frameworkh\chb\SCROLL.C(110) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(128) : warning C4508: 'HB_FUN_GETSCROLLRANGE' : la funci¢n debe devolver un valor; se supone que el tipo de valor devuelto es 'void'
D:\frameworkh\chb\SCROLL.C(137) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(140) : warning C4508: 'HB_FUN_GETSCROLLPOS' : la funci¢n debe devolver un valor; se supone que el tipo de valor devuelto es 'void'
D:\frameworkh\chb\SCROLL.C(149) : error C4430: falta el especificador de tipo; se presupone int. Nota: C++ no admite default-int
D:\frameworkh\chb\SCROLL.C(160) : warning C4508: 'HB_FUN_SETSCROLLINFO' : la funci¢n debe devolver un valor; se supone que el tipo de valor devuelto es 'void'
 
Héctor García
México, D.F.
hgarcia
 
Posts: 33
Joined: Thu Aug 10, 2006 12:23 pm
Location: México D.F

Re: ace32 con msvc

Postby Antonio Linares » Mon Mar 01, 2010 1:43 pm

Héctor,

Cambia este tipo de secciones del código:
Code: Select all  Expand view

#ifdef __HARBOUR__
   HB_FUN_SETSCROLLRANGE( PARAMS ) // ( hWnd, nFlags, nMin, nMax, lRepaint, lDisable, l32Bit )
#else
   CLIPPER SETSCROLLR( PARAMS )    // ANGE()
#endif
 

de esta forma:
Code: Select all  Expand view

HB_FUNC( SETCROLLRANGE )
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41331
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 17 guests