help needed for my first eXpress try
Posted: Sat Oct 24, 2015 5:52 am
Hi, I ´m trying my first with eXpress++.
I cant build the project. Please help.
**** This is the problem i need to fix.
Xbase++ (R) ProjectBuilder Version 2.00.644
Copyright (c) Alaska Software 1997-2015. All rights reserved.
alink @C:\Users\alepap\AppData\Local\Temp\10242426.tmp
Alaska 32-Bit Linker Version 2.00.644
Copyright (c) Alaska Software 1997-2015. All rights reserved.
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_LOADRDDS
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETTEMPLATE
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETLISTSET
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETANCHORCB
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETIDDEFAULT
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_DOT
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETOPTDEFAULT
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_READGUI
ALINK: fatal error ALK4102: 8 external symbols unresolved
'alink @C:\Users\alepap\AppData\Local\Temp\10242426.tmp' returned error 1
Processing time: 0.03 secs.
** this is my path
C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\ProgramData\Oracle\Java\javapath;c:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SDKs\TypeScript\1.1\;C:\Program Files\Skype\Phone\;C:\Program Files\Common Files\Acronis\SnapAPI\;C:\Program Files\Windows Live\Shared;C:\Program Files\FERRO Software\FtpUse;C:\Program Files\QuickTime\QTSystem\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\ALASKA_XX\BIN;C:\BAT;C:\exp20\bin20;C:\exp20\bin
** this is my LIB
C:\hello>echo %lib%
C:\ALASKA_XX\LIB;C:\exp20\lib
** this is my include
C:\hello>echo %include%
C:\ALASKA_XX\INCLUDE;C:\exp20\include
** I have prg running on 1.82 and some on 2.0
For this reason, I copy all the files of Alaska to a path c:\alaska_xx\*.* to be able to compile from one version to another.
Now I have the xbase 2.0 in the folder c:\alaska_xx
** this is my project file
[PROJECT]
HELLO.XPJ
[HELLO.XPJ]
HELLO.EXE
[HELLO.EXE]
COMPILE = xpp
GUI = yes
LINKER = alink
RC_COMPILE = arc
RC_FLAGS = /v
// $START-AUTODEPEND
std.ch
set.ch
natmsg.ch
get.ch
prompt.ch
memvar.ch
collat.ch
sql.ch
dcdialog.ch
xbp.ch
gra.ch
dcreg.ch
HELLO.obj
// $STOP-AUTODEPEND
HELLO.PRG
dcdesign.lib
** this is my hello.prg in c:\hello
This was done by Roger at the Xbase conference. I took pictures and retyped it to give it a try.
#include "dcdialog.CH"
#include "express.CH"
#include "appevent.CH"
#pragma library("dcdesign.LIB")
FUNCTION MAIN()
LOCAL GetList[0]
LOCAL cHello := SPACE(20)
LOCAL lStatus
LOCAL oBrowse
LOCAL oBrowse2
LOCAL oSay
LOCAL aHello[10]
LOCAL i
LOCAL GetOptions
LOCAL aDir := Directory()
LOCAL nPointer
AFILL(aHello,SPACE(20))
DC_LOADRDDS()
USE \exp20\data\customer VIA "FOXCDX"
@ 2, 10 DCSAY "HELLO WORLD" GET cHello ;
SAYFONT "24.Arial Bold" ;
SAYSIZE 0 ;
GETFONT "24.Arial Bold" ;
SAYCOLOR GRA_CLR_BLUE, GRA_CLR_PALEGRAY ;
@ 4, 40 DCGET aHello[1]
@ 6, 10 DCGET aHello[2]
DCHOTKEY xbeK_ALT_F12 ACTION {||DC_DOT()}
@ 8,10 DCBROWSE oBrowse DATA aDir SIZE 100,20 ;
POINTER nPointer ;
ITEMMARKED {||oSay:setCaption(aDir[nPointer,1])} ;
ITEMSELECTED {||IIF(oBrowse:colpos==1,(aDir[nPointer,1] := "Done", oBrowse:refreshCurrent()),nil)}
FOR i:= 1 TO 10
DCBROWSECOL ELEMENT i HEADER STR(i) PARENT oBrowse WIDTH 10
NEXT
@ 30, 10 DCSAY "" SAY SIZE 100 OBJECT oSay COLOR GRA_CLR_BLUE, GRA_CLR_WHITHE ;
FONT "12.Lucida Console Bold"
@ 32, 10 DCBROWSE oBrowse2 ALIAS "CUSTOMER" SIZE 100, 10 FONT "10.Courier New"
DCBROWSECOL FIELD CUSTOMER->BILL_NAME HEADER "Billing Name" PARENT oBrowse2 WIDTH 25
DCBROWSECOL FIELD CUSTOMER->BILL_STRT HEADER "Street" PARENT oBrowse2 WIDTH 25
DCBROWSECOL FIELD CUSTOMER->BILL_CITY HEADER "City" PARENT oBrowse2 WIDTH 25
DCGETOPTIONS ;
WINDOWHEIGHT 900 ;
WINDOWWIDTH 1000 ;
RESIZE ;
; // RESIZEDEFAULT DCGUI_RESIZE_AUTORESIZE ;
SOURCEFILE "\HELLO\HELLO.PRG"
DC_GETOPTDEFAULT(GetOptions)
DCREAD GUI TITLE "My First Hello" MODAL ;
FIT ;
ADDBUTTONS ;
TO lStatus OPTIONS GetOptions HANDLER myHandler
IF lStatus
MsgBox("Thank You")
ENDIF
RETURN NIL
* -------------------------------------------------------------------
PROC appsys ; RETURN
* -------------------------------------------------------------------
STATIC FUNCTION myHandler( nEvent, mp1, mp2, oXbp, oDlg, aGetList )
IF DC_DesignHandler( nEvent, mp1, mp2, oXbp, oDlg, aGetList ) == DCGUI_IGNORE
RETURN DCGUI_IGNORE
ENDIF
RETURN DCGUI_NONE
* -------------------------------------------------------------------
I cant build the project. Please help.
**** This is the problem i need to fix.
Xbase++ (R) ProjectBuilder Version 2.00.644
Copyright (c) Alaska Software 1997-2015. All rights reserved.
alink @C:\Users\alepap\AppData\Local\Temp\10242426.tmp
Alaska 32-Bit Linker Version 2.00.644
Copyright (c) Alaska Software 1997-2015. All rights reserved.
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_LOADRDDS
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETTEMPLATE
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETLISTSET
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETANCHORCB
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETIDDEFAULT
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_DOT
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_GETOPTDEFAULT
C:\hello\HELLO.obj: error ALK2102: unresolved external symbol DC_READGUI
ALINK: fatal error ALK4102: 8 external symbols unresolved
'alink @C:\Users\alepap\AppData\Local\Temp\10242426.tmp' returned error 1
Processing time: 0.03 secs.
** this is my path
C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\ProgramData\Oracle\Java\javapath;c:\Program Files\Intel\iCLS Client\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SDKs\TypeScript\1.1\;C:\Program Files\Skype\Phone\;C:\Program Files\Common Files\Acronis\SnapAPI\;C:\Program Files\Windows Live\Shared;C:\Program Files\FERRO Software\FtpUse;C:\Program Files\QuickTime\QTSystem\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\ALASKA_XX\BIN;C:\BAT;C:\exp20\bin20;C:\exp20\bin
** this is my LIB
C:\hello>echo %lib%
C:\ALASKA_XX\LIB;C:\exp20\lib
** this is my include
C:\hello>echo %include%
C:\ALASKA_XX\INCLUDE;C:\exp20\include
** I have prg running on 1.82 and some on 2.0
For this reason, I copy all the files of Alaska to a path c:\alaska_xx\*.* to be able to compile from one version to another.
Now I have the xbase 2.0 in the folder c:\alaska_xx
** this is my project file
[PROJECT]
HELLO.XPJ
[HELLO.XPJ]
HELLO.EXE
[HELLO.EXE]
COMPILE = xpp
GUI = yes
LINKER = alink
RC_COMPILE = arc
RC_FLAGS = /v
// $START-AUTODEPEND
std.ch
set.ch
natmsg.ch
get.ch
prompt.ch
memvar.ch
collat.ch
sql.ch
dcdialog.ch
xbp.ch
gra.ch
dcreg.ch
HELLO.obj
// $STOP-AUTODEPEND
HELLO.PRG
dcdesign.lib
** this is my hello.prg in c:\hello
This was done by Roger at the Xbase conference. I took pictures and retyped it to give it a try.
#include "dcdialog.CH"
#include "express.CH"
#include "appevent.CH"
#pragma library("dcdesign.LIB")
FUNCTION MAIN()
LOCAL GetList[0]
LOCAL cHello := SPACE(20)
LOCAL lStatus
LOCAL oBrowse
LOCAL oBrowse2
LOCAL oSay
LOCAL aHello[10]
LOCAL i
LOCAL GetOptions
LOCAL aDir := Directory()
LOCAL nPointer
AFILL(aHello,SPACE(20))
DC_LOADRDDS()
USE \exp20\data\customer VIA "FOXCDX"
@ 2, 10 DCSAY "HELLO WORLD" GET cHello ;
SAYFONT "24.Arial Bold" ;
SAYSIZE 0 ;
GETFONT "24.Arial Bold" ;
SAYCOLOR GRA_CLR_BLUE, GRA_CLR_PALEGRAY ;
@ 4, 40 DCGET aHello[1]
@ 6, 10 DCGET aHello[2]
DCHOTKEY xbeK_ALT_F12 ACTION {||DC_DOT()}
@ 8,10 DCBROWSE oBrowse DATA aDir SIZE 100,20 ;
POINTER nPointer ;
ITEMMARKED {||oSay:setCaption(aDir[nPointer,1])} ;
ITEMSELECTED {||IIF(oBrowse:colpos==1,(aDir[nPointer,1] := "Done", oBrowse:refreshCurrent()),nil)}
FOR i:= 1 TO 10
DCBROWSECOL ELEMENT i HEADER STR(i) PARENT oBrowse WIDTH 10
NEXT
@ 30, 10 DCSAY "" SAY SIZE 100 OBJECT oSay COLOR GRA_CLR_BLUE, GRA_CLR_WHITHE ;
FONT "12.Lucida Console Bold"
@ 32, 10 DCBROWSE oBrowse2 ALIAS "CUSTOMER" SIZE 100, 10 FONT "10.Courier New"
DCBROWSECOL FIELD CUSTOMER->BILL_NAME HEADER "Billing Name" PARENT oBrowse2 WIDTH 25
DCBROWSECOL FIELD CUSTOMER->BILL_STRT HEADER "Street" PARENT oBrowse2 WIDTH 25
DCBROWSECOL FIELD CUSTOMER->BILL_CITY HEADER "City" PARENT oBrowse2 WIDTH 25
DCGETOPTIONS ;
WINDOWHEIGHT 900 ;
WINDOWWIDTH 1000 ;
RESIZE ;
; // RESIZEDEFAULT DCGUI_RESIZE_AUTORESIZE ;
SOURCEFILE "\HELLO\HELLO.PRG"
DC_GETOPTDEFAULT(GetOptions)
DCREAD GUI TITLE "My First Hello" MODAL ;
FIT ;
ADDBUTTONS ;
TO lStatus OPTIONS GetOptions HANDLER myHandler
IF lStatus
MsgBox("Thank You")
ENDIF
RETURN NIL
* -------------------------------------------------------------------
PROC appsys ; RETURN
* -------------------------------------------------------------------
STATIC FUNCTION myHandler( nEvent, mp1, mp2, oXbp, oDlg, aGetList )
IF DC_DesignHandler( nEvent, mp1, mp2, oXbp, oDlg, aGetList ) == DCGUI_IGNORE
RETURN DCGUI_IGNORE
ENDIF
RETURN DCGUI_NONE
* -------------------------------------------------------------------