UE Studio Config - Harbour 3.0, MSVC, FWH

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby Antonio Linares » Wed Dec 21, 2011 9:14 am

Frank,

Here it is working fine simply doing:

buildh32.bat tutor02 /b

I can send you our tested FWH MSVC libs

Image
regards, saludos

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

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Wed Dec 21, 2011 10:38 am

Antonio,

working now with the new libs, thank you :)

Will start a bigger project soon...
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Thu Dec 22, 2011 9:01 am

Antonio,

seems that:
Code: Select all  Expand view
TRY
   CATCH
END
is not supported in Harbour!

Compiler error:
Code: Select all  Expand view
Error E0020  Incomplete statement or unbalanced delimiters

What is the complement in Harbour?
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby Antonio Linares » Thu Dec 22, 2011 9:24 am

Frank,

You can use:

/* TRY / CATCH / FINALLY / END */
#xcommand TRY => BEGIN SEQUENCE WITH {| oErr | Break( oErr ) }
#xcommand CATCH [<!oErr!>] => RECOVER [USING <oErr>] <-oErr->
#xcommand FINALLY => ALWAYS

or simply:

#include "hbcompat.ch"
regards, saludos

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

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Thu Dec 22, 2011 9:43 am

Antonio,

ok, understand, next one:

Code: Select all  Expand view
#pragma BEGINDUMP
#include <windows.h>
#include "hbapi.h"
   HB_FUNC( NEWGUID16 )
   {
   GUID mguid ;
           if ( CoCreateGuid( &mguid ) != NULL )
   memset( ( LPVOID ) &mguid, '?', sizeof( mguid ) ) ;
           hb_retclen( ( LPVOID ) &mguid, sizeof( mguid ) ) ;
           }
#pragma ENDDUMP

error:
Code: Select all  Expand view
error C2664: 'hb_retclen': Konvertierung des Parameters 1 von 'LPVOID' in 'const char *' nicht m”glich
        Konvertierung von 'void*' in Zeiger auf nicht-'void' erfordert eine explizite Typumwandlung
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby Antonio Linares » Thu Dec 22, 2011 10:26 am

Frank,

Change this:

hb_retclen( ( char * ) &mguid, sizeof( mguid ) ) ;
regards, saludos

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

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Fri Dec 23, 2011 1:57 pm

Antonio,

ok :)

Now I can't link ADS functions, for example:
Code: Select all  Expand view
REQUEST ADS


What I'm doing wrong? Have seen that Tim solved it, after getting a new ace32.dll from you!?
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby TimStone » Fri Dec 23, 2011 6:15 pm

Sorry, but I've been very swamped with end of the year tasks.

Actually, I turned off ADS temporarily. I think I need new libs for Harbour 3.0 to make it work. I'll be back into this the beginning of January. For now, my family and I will be sepending some much needed holiday time together.

Tim
Tim Stone
http://www.MasterLinkSoftware.com
http://www.autoshopwriter.com
timstone@masterlinksoftware.com
Using: FWH 23.10 with Harbour 3.2.0 / Microsoft Visual Studio Community 2022-24 32/64 bit
User avatar
TimStone
 
Posts: 2944
Joined: Fri Oct 07, 2005 1:45 pm
Location: Trabuco Canyon, CA USA

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby Antonio Linares » Fri Dec 23, 2011 7:08 pm

Frank,

Do you want rddads.lib for Harbour and MSVC ?
regards, saludos

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

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Sat Dec 24, 2011 9:17 am

Tim,

no problem, all the best for you and your family.

Antonio,

want to make ADS work with Harbpour and MSVC, please send me all I need :P
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Sat Dec 24, 2011 9:25 am

Antonio,

getting this link error with the rddads.lib from here http://code.google.com/p/harbour-and-xh ... b&can=2&q=:

Code: Select all  Expand view
--------------------Configuration: test_ads_harbour_msvc - Debug--------------------
c:\hb_msvc\LIB\rddads.lib : fatal error LNK1136: Ungültige oder beschädigte Datei.
test_ads_harbour_msvc.EXE - 1 error(s), 0 warning(s)
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby Antonio Linares » Tue Dec 27, 2011 10:08 am

Frank,

Here you have rddads.lib for MSVC:

http://code.google.com/p/harbour-and-xharbour-builds/downloads/detail?name=rddads_msvc.lib&can=2&q=

It has been built using this batch file from the folder Harbour\contrib\rddads:

go_vc.bat
Code: Select all  Expand view
"%ProgramFiles%\Microsoft Visual Studio 10.0\VC"\bin\cl -I..\..\include -I"%ProgramFiles%\Microsoft Visual Studio 10.0"\VC\include -I"%ProgramFiles%\Microsoft SDKs\Windows\v7.0A"\include -c ads1.c
"%ProgramFiles%\Microsoft Visual Studio 10.0\VC"\bin\cl -I..\..\include -I"%ProgramFiles%\Microsoft Visual Studio 10.0"\VC\include -I"%ProgramFiles%\Microsoft SDKs\Windows\v7.0A"\include -c adsfunc.c
"%ProgramFiles%\Microsoft Visual Studio 10.0\VC"\bin\cl -I..\..\include -I"%ProgramFiles%\Microsoft Visual Studio 10.0"\VC\include -I"%ProgramFiles%\Microsoft SDKs\Windows\v7.0A"\include -c adsmgmnt.c
"%ProgramFiles%\Microsoft Visual Studio 10.0\VC"\bin\cl -I..\..\include -I"%ProgramFiles%\Microsoft Visual Studio 10.0"\VC\include -I"%ProgramFiles%\Microsoft SDKs\Windows\v7.0A"\include -c adsx.c
"%ProgramFiles%\Microsoft Visual Studio 10.0\VC"\bin\lib /out:rddads.lib ads1.obj adsfunc.obj adsmgmnt.obj adsx.obj
regards, saludos

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

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Tue Dec 27, 2011 12:10 pm

Antonio,

thank you for the rddads.lib.

Now there are three points left:
  • I havn't found the go_vc.bat to build the rddads.lib for myself
  • How to get/generate the suitable ace32.dll? It doesn't work with Borland 'implib ace32.lib ace32.dll' (LNK1136)!
  • I need the 'hbmisc.lib' or/and the 'hbnf.lib' for some functions I'm using
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby Antonio Linares » Tue Dec 27, 2011 6:26 pm

Frank,

1. You have to create go_vc.bat yourself with the contents that I have copied in my post.

2. Generate a DEF file from the DLL doing:

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

the create the lib file from the DEF file:

(Microsoft lib.exe)
lib.exe /def:ace32.def /out:ace32.lib /MACHINE:IX86
regards, saludos

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

Re: UE Studio Config - Harbour 3.0, MSVC, FWH

Postby frose » Wed Dec 28, 2011 1:54 pm

Antonio,

created the rddads.lib with the newest ADS version 10.10.0.28 (10.00.04):
http://www.filesonic.com/file/u0x5Vfc

The required input files are from the 'Advantage Client Engine Release 10.1 for Windows 32-bit' from here: http://devzone.advantagedatabase.com/dz ... Platform=6:

Image

As you can see in the above screen shot, the ACE contains also an ace32.lib!

I used this ace32.lib successfully in my first Test_ADS_MSVC-Project!

Here is the current revision of my UEStudio application file:
Code: Select all  Expand view
# --------- Harbour y FWH configuration --------
# --- general --------------------------------------
# $P  - project name
# $Pp - path to project directory
# $Pn - project name
# --- compile --------------------------------------
# $I  - input full name
# $Ip - input path
# $In - input name
# $Ie - input extension
# $O  - output file
# $Op - path to output file
# $On - output filename (without path)
# $Oe - output extension
# $R  - release/debug setting for compiler
# --- build ----------------------------------------
# $T  - target full name
# $Tp - target path
# $Tn - target name
# $O  - output file
# $Op - path to output file
# $On - output filename (without path)
# $Oe - output extension
# $R  - release/debug setting for linker

[Settings]
Target =
Category&01 = DEFAULT RUN CONFIGURATION
Working Directory =.
Command Line Arguments =

Category&02 = Harbour Options
Automatic Memvar Declaration = no|yes
Variables Are Assumed = no|yes
Generate Preprocessed Output = no|yes
Warning Level = 1|2|3|4|0
User Include Path =
User Defines =

Compiler Options =
Linker Options =

Excluded Files = Excludes

[SettingsInfo]
Target = Provides a space for you to specify an output file and location of the program that the linker creates.
Working Directory = Provides a space for you to specify the directory in which executing occurs. If you do not specify a directory, executing occurs in the directory where the executable is located.
Command Line Arguments = Provides a space for you to specify command-line arguments you want to pass to the program at startup.
Compiler Options = Provides a space for you to specify an additional compiler options.
User Defines = Shows the switches the tool will use to build. Use ';' as delimiter.
Linker Options = Provides a space for you to specify an additional linker options.
Excluded Files = This will exclude the file(s) included in this UE project group from the build.

[SettingsReps]
User Defines = @[;|-D%s]
Automatic Memvar Declaration = no=|yes=/a
Variables Are Assumed = no=|yes=/v
Generate Preprocessed Output = no=|yes=/p
User Include Path = ^^@[;|;%s]
User Include Path&1 = ^^@[;| /i%s]
Use Multi Thread Library = no|yes
Warning Level = @/w%s

[Variables]
FWH = c:\fwh
HPATH = c:\hb_msvc
CPATH = c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC
# The path where the suitable mspdb100.dll resides:
CCOMMON7 = C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
SDKPATH = c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A

# Path for the FiveWin-Libs:
FPATHL = $(FWH)\LIB
# Path for the Harbour-Libs:
# HPATHL = $(HPATH)\LIB\WIN\MSVC
HPATHL = $(HPATH)\LIB
CPATHL = $(CPATH)\LIB
SDKPATHL = $(SDKPATH)\Lib

HOPT = /n /gc0 /q0 $(Compiler Options) /i$(HPATH)\INCLUDE /i$(FWH)\INCLUDE $(User Include Path&1) $(User Defines) $(Automatic Memvar Declaration) $(Variables Are Assumed) $(Generate Preprocessed Output) $(Warning Level)
COPT = -TP -W3 -c -I"$(CPATH)\INCLUDE"

LOPT = /nologo /subsystem:windows /force:multiple /NODEFAULTLIB:libc

# Five Win libraries
LIBS1 = FiveHC32.lib FiveH32.lib
# Harbour Libraries
LIBS2 = ace32.lib hbrtl.lib hbvm.lib gtgui.lib gtwin.lib hblang.lib hbmacro.lib hbrdd.lib rddntx.lib rddcdx.lib rddfpt.lib hbsix.lib
LIBS3 = hbdebug.lib hbcommon.lib hbpp.lib hbwin.lib hbcpage.lib hbct.lib xhb.lib hbpcre.lib png.lib hbzlib.lib hbxpp.lib hbziparc.lib rddads.lib
# VC libraries
LIBS4 = kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib oledlg.lib winmm.lib
LIBS5 = uuid.lib odbc32.lib odbccp32.lib iphlpapi.lib mpr.lib version.lib wsock32.lib psapi.lib msimg32.lib libcmt.lib oldnames.lib libcpmt.lib
# 3rd Party libraries
# LIBS6 = [i][b]add any user libs here[/b][/i]
# LIBS = $(LIBS1) $(LIBS2) $(LIBS3) $(LIBS4) $(LIBS5) $(LIBS6)
LIBS = $(LIBS1) $(LIBS2) $(LIBS3) $(LIBS4) $(LIBS5)

[Environment]
#PATH = $(HPATH)\BIN;$(CPATH)\BIN;%PATH%
PATH = $(HPATH)\BIN;$(CPATH)\BIN;$(CCOMMON7);%PATH%
INCLUDE = $(FWH)\INCLUDE;$(HPATH)\INCLUDE;$(CPATH)\INCLUDE;$(SDKPATH)\INCLUDE
LIB = $(FPATHL);$(HPATHL);$(CPATHL);$(SDKPATHL)
BuildMode = %UESMode%

[General]
TargetExt = .exe
ReleaseOut = Release
DebugOut = Debug
UseFullPaths = 1
UseDosNames = 0
Excludes = $(Excluded Files)
GenerateEDGroup=$(External Dependencies)
.CPP = .C

[MakeCommands]
run = Execute Application
makef = Show Makefile

[Execute Application]
Title = Execute $T
Cmd0 = $(Command Line Arguments)
Depends = $T
ShowWindow = 1
DisplayConsole = 0

[Show Makefile]
Title=Show makefile
Cmd0=uestudio makefile
ShowWindow=0
DisplayConsole=0

[InsertFiles]

[FileGroups]
FGO = .obj;
FGR = .res;
FGL = .lib;
FGD = .def;

[GroupFormats]
FGO = %s
FGR = %s
FGL = %s

[Build]
Out = $T
Depends = $FGO $FGR
DebugFlag =
ReleaseFlag =
#Cmd0 = LINK $(LOPT) $FGO [i][b]yourfile[/b][/i].res $(LIBS)
#Cmd0 = LINK $(LOPT) $FGO fwdbg.res $(LIBS)
Cmd0 = LINK $(LOPT) $FGO $(LIBS)

[.PRG]
Out = $In.c
DebugFlag = /b
ReleaseFlag = /l
Cmd0 = harbour $I $(HOPT) $R /o$O

IncFiles = 1
CaseSensitive = 0
IncDirs = .;$(INCLUDE);
IncKeyWords = #include;
Comments = /*.*/.//.eol.

[.C]
Out = $In.obj
Cmd0 = cl.exe $(COPT) $I

[.RC]
Out = $In.res
Cmd0 = c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\rc.exe -r -fo$O $I

IncFiles = 1
CaseSensitive = 0
IncDirs = .;$(INCLUDE);
IncKeyWords = #include;
Comments = /*.*/.//.eol.
 

Of course there have to be some more tests to be done, but for now the ADS issue is solved :D

Remains the missing 'hbmisc.lib' respectively 'hbnf.lib'

Special thanks for your brilliant support
Windows 11 Pro 22H2 22621.1848
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Harbour 3.2.0dev (r2008190002)
FWH 23.10 x86
User avatar
frose
 
Posts: 392
Joined: Tue Mar 10, 2009 11:54 am
Location: Germany, Rietberg

PreviousNext

Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 71 guests