Page 1 of 1

FiveDBU 64 Bit ?

Posted: Fri Apr 14, 2023 4:37 am
by Jimmy
hi,

i try to use FiveDBU.PRG with MSVC 64 Bit

i got a EXE ... but it does not run :shock:
when try BCC7 64 Bit i got also Problem to build EXE

it does work with BCC7 32 Bit :!:

how to build FiveDBU under 64 Bit :?:

---

when got a 64 Bit FiveDBU.EXE what about ODBC "Driver" Version are need in 64 Bit Environment :?:
i know ADo have 32 / 64 Bit Version
what about MySQL

Re: FiveDBU 64 Bit ?

Posted: Fri Apr 14, 2023 6:53 am
by Antonio Linares
Dear Jimmy,

Please rename in fivedbu.prg:

function FiveDbu( cDbfName )

as

function Main( cDbfName )

Re: FiveDBU 64 Bit ?

Posted: Fri Apr 14, 2023 7:11 pm
by Jimmy
hi Antonio,
Antonio Linares wrote: Please rename in fivedbu.prg:

function FiveDbu( cDbfName )

as

function Main( cDbfName )
YES. now it work with MSVC 64 Bit :D
thx for Solution

Re: FiveDBU 64 Bit ?

Posted: Sat Apr 15, 2023 1:03 am
by TimStone
Jimmy,

You can add it to a program you already created, and it would be a nice editor. I did find some "dead ends" in there, however, since some functions were not actually completed in the .prg that is provided.

I took an earlier fivedbu.prg program from many years ago as a model, and converted it to an actual class. I used the current version to discover some better options, and thus modified my class.

I think you will enjoy the options you can use with fivedbu.

TIm

Re: FiveDBU 64 Bit ?

Posted: Sun Apr 16, 2023 4:03 am
by Jimmy
hi,

i got FiveDBU to compile/run with MSVC 64 Bit

now i try on 64 Bit OS

Code: Select all | Expand

buildh32.bat fivedbu
and got
FiveH32.lib(FWMARIA.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_nxs_crypt" in Funktion "_write
_to_file".
Hinweis zu Symbolen, die definiert wurden und möglicherweise übereinstimmen:
"void __cdecl nxs_crypt(unsigned char const *,unsigned long,unsigned char const *,unsigned long,unsigned char *)" (?
nxs_crypt@@YAXPBEK0KPAE@Z)
fivedbu.exe : fatal error LNK1120: 1 nicht aufgelöste Externel
p,s, i have build fivedemo.exe using buildh32.bat so Path are right for 32 Bit App

Re: FiveDBU 64 Bit ?

Posted: Mon Apr 17, 2023 5:52 am
by Antonio Linares
Dear Jimmy,

You have lo link Harbour's xhb.lib

Re: FiveDBU 64 Bit ?

Posted: Mon Apr 17, 2023 10:14 am
by Jimmy
hi Antonio,
Antonio Linares wrote:You have lo link Harbour's xhb.lib
have add xhb.lib but still get Error
FiveH32.lib(FWMARIA.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_nxs_crypt" in Funktion "_write
_to_file".
Hinweis zu Symbolen, die definiert wurden und möglicherweise übereinstimmen:
"void __cdecl nxs_crypt(unsigned char const *,unsigned long,unsigned char const *,unsigned long,unsigned char *)" (?
nxs_crypt@@YAXPBEK0KPAE@Z)
fivedbu.exe : fatal error LNK1120: 1 nicht aufgelöste Externe
* Linking errors *
c:\fwh64\samples\msvc.tmp
fivedbu.obj
c:\fwh\lib\FiveH32.lib c:\fwh\lib\FiveHC32.lib c:\fwh\lib\libmysql32.lib
c:\fwh\lib\hbhpdf32.lib
c:\fwh\lib\libhpdf32.lib
c:\harbour\lib\win\msvc\hbrtl.lib
c:\harbour\lib\win\msvc\hbvm.lib
c:\harbour\lib\win\msvc\gtgui.lib
c:\harbour\lib\win\msvc\hblang.lib
c:\harbour\lib\win\msvc\hbmacro.lib
c:\harbour\lib\win\msvc\hbrdd.lib
c:\harbour\lib\win\msvc\rddntx.lib
c:\harbour\lib\win\msvc\rddcdx.lib
c:\harbour\lib\win\msvc\rddfpt.lib
c:\harbour\lib\win\msvc\hbsix.lib
c:\harbour\lib\win\msvc\hbdebug.lib
c:\harbour\lib\win\msvc\hbcommon.lib
c:\harbour\lib\win\msvc\hbpp.lib
c:\harbour\lib\win\msvc\hbcpage.lib
c:\harbour\lib\win\msvc\hbwin.lib
c:\harbour\lib\win\msvc\hbcplr.lib
c:\harbour\lib\win\msvc\hbpcre.lib
c:\harbour\lib\win\msvc\hbct.lib
c:\harbour\lib\win\msvc\xhb.lib
c:\harbour\lib\win\msvc\png.lib
c:\harbour\lib\win\msvc\hbzlib.lib
c:\harbour\lib\win\msvc\hbziparc.lib
c:\harbour\lib\win\msvc\hbmzip.lib
c:\harbour\lib\win\msvc\minizip.lib
c:\harbour\lib\win\msvc\hbtip.lib
c:\harbour\lib\win\msvc\hbzebra.lib
c:\harbour\lib\win\msvc\xhb.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
comctl32.lib
comdlg32.lib
advapi32.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
odbc32.lib
odbccp32.lib
iphlpapi.lib
mpr.lib
version.lib
wsock32.lib
msimg32.lib
oledlg.lib
psapi.lib
gdiplus.lib
winmm.lib
vfw32.lib
runtimeobject.lib
ws2_32.lib
shlwapi.lib
strmiids.lib
fivedbu.res

Re: FiveDBU 64 Bit ?

Posted: Mon Apr 17, 2023 3:48 pm
by alerchster
Hi

I can build fivedbu with MSVC 32 Bit on a 64Bit Win11

This is my #buildh32.bat

Code: Select all | Expand

@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ECHO ³ FiveWin for Harbour 21.06 (VS32bits) Jun. 2021  Harbour development power  ³Ü
ECHO ³ (c) FiveTech 1993-2021 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7/8/10 ³Û
ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ECHO ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST

set oldpath=%path%
set oldinclude=%include%
set oldlib=%lib%
set oldlibpath=%libpath%
@set current_dir=%cd%
if exist "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
set FWDIR=c:\fwh
set HBDIR=C:\harbour

ECHO Compiling...

@set fwh=%FWDIR%
@set hdir=%HBDIR%
@set hdirl=%hdir%\lib\win\msvc

@cd %current_dir%
%hdir%\bin\win\msvc\harbour %1 /n /i%fwh%\include;%hdir%\include /w /p %2 %3 > comp.log 2> warnings.log
IF ERRORLEVEL 1 GOTO COMPILEERROR
@type comp.log
@type warnings.log

cl.exe -TP -W3 -c /GS- /I%hdir%\include /GA %1.c
:ENDCOMPILE

IF EXIST %1.rc rc -r -d__FLAT__ %1
IF EXIST %1.rc IF NOT EXIST %1.res rc -r -d__FLAT__ %1

echo %1.obj  > msvc.tmp

echo %fwh%\lib\FiveH32.lib %fwh%\lib\FiveHC32.lib %fwh%\lib\libmysql32.lib  >> msvc.tmp

echo %fwh%\lib\hbhpdf32.lib >> msvc.tmp
echo %fwh%\lib\libhpdf32.lib >> msvc.tmp
echo %hdirl%\hbrtl.lib  >> msvc.tmp
echo %hdirl%\hbvm.lib  >> msvc.tmp
echo %hdirl%\gtgui.lib  >> msvc.tmp
echo %hdirl%\hblang.lib  >> msvc.tmp
echo %hdirl%\hbmacro.lib  >> msvc.tmp
echo %hdirl%\hbrdd.lib  >> msvc.tmp
echo %hdirl%\rddntx.lib  >> msvc.tmp
echo %hdirl%\rddcdx.lib  >> msvc.tmp
echo %hdirl%\rddfpt.lib  >> msvc.tmp
echo %hdirl%\hbsix.lib  >> msvc.tmp
echo %hdirl%\hbdebug.lib  >> msvc.tmp
echo %hdirl%\hbcommon.lib  >> msvc.tmp
echo %hdirl%\hbpp.lib  >> msvc.tmp
echo %hdirl%\hbcpage.lib  >> msvc.tmp
echo %hdirl%\hbwin.lib  >> msvc.tmp
echo %hdirl%\hbcplr.lib  >> msvc.tmp
echo %hdirl%\hbpcre.lib >> msvc.tmp
echo %hdirl%\hbct.lib  >> msvc.tmp
echo %hdirl%\xhb.lib  >> msvc.tmp
echo %hdirl%\png.lib  >> msvc.tmp
echo %hdirl%\hbzlib.lib  >> msvc.tmp
echo %hdirl%\hbziparc.lib >> msvc.tmp
echo %hdirl%\hbmzip.lib >> msvc.tmp
echo %hdirl%\minizip.lib >> msvc.tmp
echo %hdirl%\hbtip.lib >> msvc.tmp
echo %hdirl%\hbzebra.lib >> msvc.tmp

rem Uncomment these two lines to use Advantage RDD
rem echo %hdirl%\rddads.lib >> msvc.tmp
rem echo %hdirl%\ace32.lib >> msvc.tmp

echo kernel32.lib  >> msvc.tmp
echo user32.lib    >> msvc.tmp
echo gdi32.lib     >> msvc.tmp
echo winspool.lib  >> msvc.tmp
echo comctl32.lib  >> msvc.tmp
echo comdlg32.lib  >> msvc.tmp
echo advapi32.lib  >> msvc.tmp
echo shell32.lib   >> msvc.tmp
echo ole32.lib     >> msvc.tmp
echo oleaut32.lib  >> msvc.tmp
echo uuid.lib      >> msvc.tmp
echo odbc32.lib    >> msvc.tmp
echo odbccp32.lib  >> msvc.tmp
echo iphlpapi.lib  >> msvc.tmp
echo mpr.lib       >> msvc.tmp
echo version.lib   >> msvc.tmp
echo wsock32.lib   >> msvc.tmp
echo msimg32.lib   >> msvc.tmp
echo oledlg.lib    >> msvc.tmp
echo psapi.lib     >> msvc.tmp
echo gdiplus.lib   >> msvc.tmp
echo winmm.lib     >> msvc.tmp
echo vfw32.lib     >> msvc.tmp
echo runtimeobject.lib >> msvc.tmp
echo ws2_32.lib    >> msvc.tmp
echo shlwapi.lib   >> msvc.tmp
echo strmiids.lib  >> msvc.tmp

IF EXIST %1.res echo %1.res >> msvc.tmp

link @msvc.tmp /nologo /subsystem:windows /NODEFAULTLIB:msvcrt

IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built *
@set path=%oldpath%
@set include=%oldinclude%
@set lib=%oldlib%
@set libpath=%oldlibpath%
@set oldpath=""
@set oldinclude=""
@set oldlib=""
@set oldlibpath=""
%1
GOTO EXIT
ECHO

rem delete temporary files
@del %1.c
@del msvc.tmp

:COMPILEERROR
@type comp.log
@type warnings.log
ECHO * Compiling errors *
GOTO EXIT

:LINKERROR
ECHO * Linking errors *
GOTO EXIT

:SINTAX
ECHO    SYNTAX: Build [Program]     {-- No especifiques la extensi?n PRG
ECHO                                {-- Don't specify .PRG extension
GOTO EXIT

:NOEXIST
ECHO The specified PRG %1 does not exist

:EXIT
In Fivedbu.prg Function WebServer() must be remarked because it is in fiveh32.lib included.

Re: FiveDBU 64 Bit ?

Posted: Mon Apr 17, 2023 4:01 pm
by Antonio Linares
> In Fivedbu.prg Function WebServer() must be remarked because it is in fiveh32.lib included

Please rename it as static

we have updated it for FWH next build comming...

Re: FiveDBU 64 Bit ?

Posted: Mon Apr 17, 2023 5:59 pm
by Jimmy
hi,

thx for Answer,

Question : do i use \fwh64 - \harbour64 or \fwh - \harbour for 32 Bit :?:

under \harbour64 i have c:\harbour64\bin\win\msvc\ but not under \harbour for 32 Bit

now i change it

Code: Select all | Expand

set FWDIR=c:\fwh
set HBDIR=C:\harbour64
and now it compile and run fine :D

sorry for all trouble i made

Re: FiveDBU 64 Bit ?

Posted: Mon Apr 17, 2023 7:09 pm
by Antonio Linares
very good :-)