Error ao atualizar para FWH 7.04

saviotti
Posts: 43
Joined: Thu Feb 15, 2007 7:45 pm
Location: Brasil
Contact:

Post by saviotti »

Antonio,

Na verdade não está compilando nenhum arquivo .C todos estes estão provocando o mesmo erro :

[MENUS.C]
MYC_FLAGS =
MYDEFINES =

[GRADFILL.C]
MYC_FLAGS =
MYDEFINES =

[TABCTRL.C]
MYC_FLAGS =
MYDEFINES =

[POINT.C]
MYC_FLAGS =
MYDEFINES =

[SETMASK.C]
MYC_FLAGS =
MYDEFINES =

[TREEDRAW.C]
MYC_FLAGS =
MYDEFINES =

Este é o arquivo MENU.C

#define OEMRESOURCE

#include <WinTen.h>
#include <Windows.h>
#include <ClipApi.h>

BOOL bStrAt( BYTE bChar, LPSTR szText );
LPSTR StrToken( LPSTR szText, WORD wOcurrence, BYTE bSeparator, LPWORD pwLen );

void WindowBoxIn( HDC hDC, RECT * pRect );
void WndDrawBox( HDC hDC, RECT * rct, HPEN hPUpLeft, HPEN hPBotRit );
void WindowInset( HDC hDC, RECT * pRect );
void WindowRaised( HDC hDC, RECT * pRect );
void DrawBitmap( HDC, HBITMAP, WORD, WORD, WORD, WORD, DWORD );
void DrawMasked( HDC, HBITMAP, WORD, WORD );
void DrawGrayed( HDC, HBITMAP, int, int );
void RectDisable( HDC, LPRECT);
void DegardeFill( HDC hDC, RECT * rori, COLORREF cFrom, COLORREF cTo, int nDegType ) ;
void DegradColor( HDC hDC, RECT * rori, COLORREF cFrom, COLORREF cTo, int nDegType, int iRound ) ;

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

HARBOUR HB_FUN_CREATEMENU( PARAMS )
{
_retnl( ( LONG ) CreateMenu() );
}

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

HARBOUR HB_FUN_CREATEPOPUPMENU( PARAMS )
{
_retnl( ( LONG ) CreatePopupMenu() );
}

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

HARBOUR HB_FUN_TRACKPOPUP( PARAMS )
{
_retl( TrackPopupMenu( ( HMENU ) _parnl( 1 ), _parni( 2 ), _parni( 4 ),
_parni( 3 ), _parni( 5 ), ( HWND ) _parni( 6 ), NULL ) );
}

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

HARBOUR HB_FUN_ENABLEMENUITEM( PARAMS )
{
_retl( EnableMenuItem( ( HMENU ) _parnl( 1 ), _parni( 2 ), _parni( 3 ) ) );
}

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

HARBOUR HB_FUN_CHECKMENUITEM( PARAMS ) // ()
{
_retl( CheckMenuItem( ( HMENU ) _parnl( 1 ), _parni( 2 ), _parni( 3 ) ) );
}

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

HARBOUR HB_FUN_GETMITEMCOUNT( PARAMS ) // ()
{
_retni( GetMenuItemCount( ( HMENU ) _parnl( 1 ) ) );
}

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

HARBOUR HB_FUN_GETMITEMID( PARAMS ) // hMenu, nPos
{
_retni( GetMenuItemID( ( HMENU ) _parnl( 1 ), _parni( 2 ) ) );
}

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

HARBOUR HB_FUN_GETSYSTEMMENU( PARAMS ) // ()
{
_retnl( ( LONG ) GetSystemMenu( ( HWND ) _parnl( 1 ), _parl( 2 ) ) );
}

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

HARBOUR HB_FUN_DESTROYMENU( PARAMS ) // () hMenu
{
_retl( DestroyMenu( ( HMENU ) _parnl( 1 ) ) );
}

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

HARBOUR HB_FUN_GETSUBMENU( PARAMS ) // hMenu, nPos
{
_retnl( ( LONG ) GetSubMenu( ( HMENU ) _parnl( 1 ), _parni( 2 ) ) );
}

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

HARBOUR HB_FUN_GETMENUSTRING( PARAMS ) // () hMenu, nId, nPosOrValue
{
BYTE bBuffer[ 200 ];
WORD wLen = GetMenuString( ( HMENU ) _parnl( 1 ), _parni( 2 ), ( char * ) bBuffer,
199, _parni( 3 ) );

_retclen( ( char * ) bBuffer, wLen );
}

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

HARBOUR HB_FUN_GETMENUSTATE( PARAMS ) // () hMenu, nId, nFlags
{
_retni( GetMenuState( ( HMENU ) _parnl( 1 ), _parni( 2 ), _parni( 3 ) ) );
}

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

HARBOUR HB_FUN_DRAWMENUBAR( PARAMS ) // () hWnd
{
DrawMenuBar( ( HWND ) _parnl( 1 ) );
}

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

HARBOUR HB_FUN_HILITEMENUITEM( PARAMS ) // () hWnd, hMenu, idItem, nHiliteFlags
{
_retl( HiliteMenuItem( ( HWND ) _parnl( 1 ), ( HMENU ) _parnl( 2 ),
_parni( 3 ), _parni( 4 ) ) );
}

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

HARBOUR HB_FUN_LOADMENU( PARAMS )
{
_retnl( ( LONG ) LoadMenu( ( HINSTANCE ) _parnl( 1 ),
( LPSTR ) IF( ISCHAR( 2 ), _parc( 2 ),
MAKEINTRESOURCE( _parni( 2 ) ) ) ) );
}

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

HARBOUR HB_FUN_APPENDMENU( PARAMS )
{
_retl( AppendMenu( ( HMENU ) _parnl( 1 ), ( UINT ) _parnl( 2 ), _parnl( 3 ),
IF( ISCHAR( 4 ), _parc( 4 ), ( LPSTR ) _parnl( 4 ) ) ) );
}

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

HARBOUR HB_FUN_SETMENU( PARAMS )
{
_retl( SetMenu( ( HWND ) _parnl( 1 ), ( HMENU ) _parnl( 2 ) ) );
}

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

HARBOUR HB_FUN_MODIFYMENU( PARAMS )
{
_retl( ModifyMenu( ( HMENU ) _parnl( 1 ), ( UINT ) _parni( 2 ),
_parni( 3 ), ( UINT ) _parni( 4 ),
IF( ISCHAR( 5 ), _parc( 5 ), ( LPSTR ) _parnl( 5 ) ) ) );
}

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

HARBOUR HB_FUN_INSERTMENU( PARAMS ) // ( hMenu, nIdItem, nFlags, nNewItem, cPrompt ) --> lSuccess
{
_retl( InsertMenu( ( HMENU ) _parnl( 1 ), _parni( 2 ), _parni( 3 ),
_parni( 4 ), _parc( 5 ) ) );
}

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

HARBOUR HB_FUN_REMOVEMENU( PARAMS ) // ( hMenu, nItem, nFlags ) --> lSuccess
{
_retl( RemoveMenu( ( HMENU ) _parnl( 1 ),
( UINT ) _parni( 2 ),
( UINT ) _parni( 3 ) ) );
}

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

HARBOUR HB_FUN_ATMENUDRAWITEM( PARAMS ) // ( pDrawItemStruct, cPrompt, lTop, hBitmap,lSeparator,acolor,lbar )
{
LPDRAWITEMSTRUCT lpdis = ( LPDRAWITEMSTRUCT ) _parnl( 1 );
LPSTR szPrompt = _parc( 2 );
BOOL bTab = bStrAt( 9, szPrompt );
WORD wLen;
BOOL lSeparator = _parl( 5 );
BOOL lBar = _parl( 7 );
HPEN hNormal,hOldPen;
HBRUSH hBrush;
LOGBRUSH lb;
RECT rct;
RECT rctdg;
RECT rctsep;
RECT rctshd;
COLORREF nClrMenu = _parnl(6,1);
COLORREF nClrMenuTxt = _parnl(6,2);
COLORREF nClrBack = _parnl(6,3);
COLORREF nClrTo = _parnl(6,4);
COLORREF nClrHighBai = _parnl(6,5);
COLORREF nClrHighBaf = _parnl(6,6);
COLORREF nClrHighTxt = _parnl(6,7);
COLORREF nClrHighBar = _parnl(6,8);

HBITMAP hBmp = ( HBITMAP ) _parnl( 4 );
switch( lpdis->itemAction )
{
case ODA_DRAWENTIRE:
case ODA_SELECT:
lb.lbStyle = BS_SOLID;
lb.lbColor = nClrMenu;
hBrush = CreateBrushIndirect( &lb );
FillRect( lpdis->hDC, &lpdis->rcItem, hBrush );
DeleteObject( hBrush );

SetBkColor( lpdis->hDC, nClrMenu );
SetBkMode( lpdis->hDC, TRANSPARENT );
SetTextColor( lpdis->hDC, nClrMenuTxt);


if( lpdis->itemState & ODS_SELECTED &&
! ( lpdis->itemState & ODS_GRAYED ) && !lSeparator )
{
lb.lbColor = nClrHighBai;
SetBkColor( lpdis->hDC, nClrHighBai );
SetTextColor( lpdis->hDC, nClrHighTxt );
if( !lBar )
lpdis->rcItem.left += 22;
}
else
lb.lbColor = nClrMenu;


hBrush = CreateBrushIndirect( &lb );
FillRect( lpdis->hDC, &lpdis->rcItem, hBrush );
DeleteObject( hBrush );
if( lpdis->itemState & ODS_SELECTED &&
! ( lpdis->itemState & ODS_GRAYED ) )
{
if( !lBar )
lpdis->rcItem.left -= 22;
}

if(!lBar)
{
rct.top = lpdis->rcItem.top+1;
rct.left = lpdis->rcItem.left+1;
rct.right = lpdis->rcItem.right-1; //22;
rct.bottom = lpdis->rcItem.bottom - 2;
}
else
{
rct.top = lpdis->rcItem.top+1;
rct.left = lpdis->rcItem.left+1;
rct.right = lpdis->rcItem.right-4;
rct.bottom = lpdis->rcItem.bottom - 1;

rctshd.top = lpdis->rcItem.top+3;
rctshd.left = lpdis->rcItem.right-3;
rctshd.right = lpdis->rcItem.right;
rctshd.bottom = lpdis->rcItem.bottom;

}

rctdg.top = lpdis->rcItem.top-1; //-4
rctdg.left = lpdis->rcItem.left;
rctdg.right = 22;
rctdg.bottom = lpdis->rcItem.bottom+1; // - 1;

if( !lBar )
DegradColor( lpdis->hDC, &rctdg, nClrBack, nClrTo, 2, 1 ) ;

if( lpdis->itemState & ODS_SELECTED )
if( ! ( lpdis->itemState & ODS_GRAYED ) ) //&&
{
hNormal = CreatePen(PS_SOLID,0,nClrHighBar);
hOldPen = SelectObject(lpdis->hDC,hNormal);
Rectangle(lpdis->hDC,rct.left-1,rct.top-1,rct.right+1,rct.bottom+1);
SelectObject(lpdis->hDC,hOldPen);
DeleteObject( hNormal );
DegradColor( lpdis->hDC, &rct, nClrHighBai, nClrHighBaf, 1, 1 ) ;
if(lBar)
{
lb.lbColor = GetSysColor(16);
hBrush = CreateBrushIndirect( &lb );
FillRect( lpdis->hDC, &rctshd, hBrush );
DeleteObject( hBrush );
rctshd.top = lpdis->rcItem.top;
rctshd.left = lpdis->rcItem.right-3;
rctshd.right = lpdis->rcItem.right;
rctshd.bottom = lpdis->rcItem.top+3;
lb.lbColor = nClrMenu;
hBrush = CreateBrushIndirect( &lb );
FillRect( lpdis->hDC, &rctshd, hBrush );
DeleteObject( hBrush );

}
}
if(!lBar)
{

if( lpdis->itemState & ODS_CHECKED )
{
HBITMAP hBmp = LoadBitmap( 0, MAKEINTRESOURCE( OBM_CHECK ) );

if( ! ( lpdis->itemState & ODS_SELECTED ) )
DrawMasked( lpdis->hDC, hBmp, lpdis->rcItem.top + 3,
lpdis->rcItem.left + 4 );
else
DrawMasked( lpdis->hDC, hBmp, lpdis->rcItem.top + 3,
lpdis->rcItem.left + 4 );
DeleteObject( hBmp );
}


if( hBmp && !( (int) hBmp == 1 ) )
{
if( ! ( lpdis->itemState & ODS_CHECKED ) )
DrawMasked( lpdis->hDC, hBmp, lpdis->rcItem.top + 3, //ojo
lpdis->rcItem.left + 2 );
else
if( ! ( lpdis->itemState & ODS_SELECTED ) )
DrawGrayed( lpdis->hDC, hBmp, lpdis->rcItem.top + 3,
lpdis->rcItem.left + 2 );
else
DrawMasked( lpdis->hDC, hBmp, lpdis->rcItem.top + 3,
lpdis->rcItem.left + 2 );
}
}
if(!lBar)
{
lpdis->rcItem.top += 4;
lpdis->rcItem.left += 26;
}
else
{
lpdis->rcItem.top += 2;
lpdis->rcItem.left += 3;
}
if( !bTab )
{
if( lSeparator )
{
rctsep.top = lpdis->rcItem.top-1;
rctsep.left = lpdis->rcItem.left;
rctsep.right = lpdis->rcItem.right+5;
rctsep.bottom = lpdis->rcItem.bottom - 4;
lb.lbStyle = BS_SOLID;
lb.lbColor = nClrHighBar ;
hBrush = CreateBrushIndirect( &lb );
FillRect( lpdis->hDC, &rctsep, hBrush );
DeleteObject( hBrush );
}
else
{
if(!lBar)
{
DrawText( lpdis->hDC, szPrompt, -1, &lpdis->rcItem, DT_LEFT );
}
else
{
lpdis->rcItem.left -= 5;
DrawText( lpdis->hDC, szPrompt, -1, &lpdis->rcItem, DT_CENTER );
lpdis->rcItem.left += 5;
}
}
}
else
{
lpdis->rcItem.right -= 26;
StrToken( szPrompt, 1, 9, &wLen ); // 32 bits does not fill wLen before
DrawText( lpdis->hDC, StrToken(szPrompt, 1, 9, &wLen), wLen, &lpdis->rcItem, DT_LEFT );
StrToken( szPrompt, 2, 9, &wLen ); // 32 bits does not fill wLen before
DrawText( lpdis->hDC, StrToken(szPrompt, 2, 9, &wLen), wLen, &lpdis->rcItem, DT_RIGHT );
lpdis->rcItem.right += 26;
}
if(!lBar)
{
/*
if( !lSeparator )
{
if( lpdis->itemState & ODS_GRAYED )
RectDisable( lpdis->hDC, &lpdis->rcItem );
}
*/
lpdis->rcItem.top -= 4;
lpdis->rcItem.left -= 26;
}
else
{
lpdis->rcItem.top -= 2;
lpdis->rcItem.left -= 4;
}



_retl( TRUE );
break;

case ODA_FOCUS:
_retl( FALSE );
break;
}
}

//----------------------------------------------------------------------------//
/*
#ifdef __HARBOUR__
CLIPPER MENUMEASUREITEM( PARAMS ) // ( pMeasureItemStruct, nLen )
#else
CLIPPER MENUMEASUR( PARAMS ) // EITEM( pMeasureItemStruct, nLen )
#endif
{
LPMEASUREITEMSTRUCT lp = ( LPMEASUREITEMSTRUCT ) _parnl( 1 );
lp->itemWidth = _parni( 2 );
lp->itemHeight = GetSystemMetrics( SM_CYMENU ); //18
}
*/
//----------------------------------------------------------------------------//

HARBOUR HB_FUN_GETMEAITEM( PARAMS ) // ( pMeasureItemStruct ) --> nMenuItemID
{
LPMEASUREITEMSTRUCT lp = ( LPMEASUREITEMSTRUCT ) _parnl( 1 );

_retnl( lp->itemID );
}

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

HARBOUR HB_FUN_GETDRAWITEM( PARAMS ) // ( pDrawItemStruct ) --> nMenuItemID
{
LPDRAWITEMSTRUCT lpdis = ( LPDRAWITEMSTRUCT ) _parnl( 1 );

_retnl( lpdis->itemID );
}

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

HARBOUR HB_FUN_GETDRAWMENU( PARAMS ) // ( pDrawItemStruct ) --> hMenu
{
LPDRAWITEMSTRUCT lpdis = ( LPDRAWITEMSTRUCT ) _parnl( 1 );

_retnl( ( LONG ) lpdis->hwndItem );
}

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

HARBOUR HB_FUN_ISMENU( PARAMS )
{
_retl( IsMenu( ( HMENU ) _parnl( 1 ) ) );
}

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

HB_FUNC( _GETMENUID)
{
_retnl((LONG)GetMenu((HWND)_parnl(1)));
}

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

HB_FUNC ( _COLORMENU )
{
HMENU iMenu;
MENUINFO iMenuInfo ;
COLORREF lColor = hb_parnl(2);
BOOL lSubMenu = hb_parl(3);
HBITMAP himage ;
// HWND himage ;

// himage = (HWND)LoadImage(0,hb_parc(4),IMAGE_BITMAP ,0,0,LR_LOADFROMFILE | LR_LOADMAP3DCOLORS | LR_LOADTRANSPARENT );
himage = (HBITMAP)LoadImage(0,hb_parc(4),IMAGE_BITMAP ,0,0,LR_LOADFROMFILE | LR_LOADMAP3DCOLORS | LR_LOADTRANSPARENT );

if (himage==NULL)
{
// himage = (HWND)LoadImage(GetModuleHandle(NULL),hb_parc(4),IMAGE_BITMAP ,0,0, LR_LOADMAP3DCOLORS | LR_LOADTRANSPARENT );
himage = (HBITMAP)LoadImage(GetModuleHandle(NULL),hb_parc(4),IMAGE_BITMAP ,0,0, LR_LOADMAP3DCOLORS | LR_LOADTRANSPARENT );
}

iMenu = GetMenu((HWND) _parnl(1));
GetMenuInfo(iMenu, &iMenuInfo);
iMenuInfo.cbSize = sizeof(MENUINFO);

if (lSubMenu)
{
iMenuInfo.fMask = MIM_BACKGROUND | MIM_APPLYTOSUBMENUS ;
}
else
{
iMenuInfo.fMask = MIM_BACKGROUND;
}

if (himage==NULL)
{
iMenuInfo.hbrBack = CreateSolidBrush(lColor);
}
else
{
iMenuInfo.hbrBack = CreatePatternBrush(himage);
}

SetMenuInfo(iMenu, &iMenuInfo);
DrawMenuBar((HWND) _parnl(1));

}
//----------------------------------------------------------------------------//

HB_FUNC ( _COLORSUBMENU )
{
HMENU iMenu;
MENUINFO iMenuInfo ;
COLORREF lColor = _parnl(2);
iMenu = GetMenu((HWND) _parnl(1));
GetMenuInfo(iMenu, &iMenuInfo);
iMenuInfo.cbSize = sizeof(MENUINFO);
iMenuInfo.fMask = MIM_BACKGROUND | MIM_APPLYTOSUBMENUS;
iMenuInfo.hbrBack = CreateSolidBrush(lColor);
SetMenuInfo(iMenu, &iMenuInfo);
// DrawMenuBar((HWND) _parnl(1));
}

//----------------------------------------------------------------------------//
HB_FUNC( CHGMENUMEA ) // pMeasureItemStruct, nWidth, nHeight
{
LPMEASUREITEMSTRUCT lp = ( LPMEASUREITEMSTRUCT ) _parnl( 1 );
lp->itemWidth = _parni( 2 ) ;
lp->itemHeight = _parni( 3 ) ;
}

HB_FUNC( GETDRAWISR ) // ( pDrawitemstruct )
{
LPDRAWITEMSTRUCT lp = ( LPDRAWITEMSTRUCT ) _parnl( 1 );

_reta( 12 );

_storni( lp->CtlType , -1, 1 );
_storni( lp->CtlID , -1, 2 );
_storni( lp->itemID , -1, 3 );
_storni( lp->itemAction , -1, 4 );
_storni( lp->itemState , -1, 5 );
_storni( ( LONG ) lp->hwndItem , -1, 6 );
_storni( ( LONG ) lp->hDC , -1, 7 );
_storni( lp->rcItem.top , -1, 8 );
_storni( lp->rcItem.left , -1, 9 );
_storni( lp->rcItem.bottom, -1, 10 );
_storni( lp->rcItem.right , -1, 11 );
_stornd( lp->itemData , -1, 12 );

}

HB_FUNC( GETMEAUSUR ) // ( pMeasureItemStruct )
{
LPMEASUREITEMSTRUCT lp = ( LPMEASUREITEMSTRUCT ) _parnl( 1 );

_reta( 6 );

_storni( lp->CtlType , -1, 1 );
_storni( lp->CtlID , -1, 2 );
_storni( lp->itemID , -1, 3 );
_storni( lp->itemWidth , -1, 4 );
_storni( lp->itemHeight , -1, 5 );
_stornd( lp->itemData , -1, 12 );

}

//----------------------------------------------------------------------------//
saviotti
Posts: 43
Joined: Thu Feb 15, 2007 7:45 pm
Location: Brasil
Contact:

Post by saviotti »

Antonio,

Para não ter conflito de arquivos, deletei minhas pastas c:\fwh e c:\xHB e instalei novamente.

Compilei FIVEHX.LIB com FIVEMAK.MAK conforme abaixo :

MAKE5HX.BAT

@ECHO OFF
SET FWHDIR=c:\FWH_1
SET HDIR=c:\XHB
SET BCDIR=c:\BCC55
del *.obj /s
del *.c /s
DEL FIVEHX.LIB
c:\bcc55\BIN\MAKE -f FiveHX.mak


FIVEHX.MAK

!if !$d(FWHDIR)
!error FWHDIR isn't defined
!endif
!if !$d(HDIR)
!error HDIR isn't defined
!endif
!if !$d(BCDIR)
!error BCDIR isn't defined
!endif

.path.obj = obj
.path.res = obj
.path.c = c
.path.prg = prg


BCC_OPT = -d $(CFLAGS)
.SUFFIXES: .exe .obj .c

FiveHX_LIB_OBJS = \
activex.prg \
alert.obj \
bar.obj \
bitmap.obj \
block.obj \
browse.obj \
brush.obj \
btnbmp.obj \
button.obj \
buttonb.obj \
c3.obj \
checkbox.obj \
clipbrd.obj \
clipmore.obj \
combobox.obj \
control.obj \
cursor.obj \
database.obj \
db10.obj \
dbcombo.obj \
dbm.obj \
dbms.obj \
dbtools.obj \
dde.obj \
ddeclien.obj \
ddeserv.obj \
dialog.obj \
dlgfind.obj \
dlgs32.obj \
edit.obj \
editcell.obj \
errsysw.obj \
fget.obj \
field.obj \
filename.obj \
fline.obj \
folder.obj \
font.obj \
fwdbgp.obj \
fwerror.obj \
getsysin.obj \
gettasks.obj \
group.obj \
gtf.obj \
harbour.obj \
help32.obj \
icon.obj \
iget.obj \
igroup.obj \
image.obj \
ini.obj \
internet.obj \
keys.obj \
linklist.obj \
listbox.obj \
loadval.obj \
longnam2.obj \
math.obj \
mdichild.obj \
mdiclien.obj \
mdiframe.obj \
mdirec.obj \
memoedit.obj \
memstat.obj \
menu.obj \
menuitem.obj \
meter.obj \
mget.obj \
mimeclip.obj \
mru.obj \
msgbar.obj \
msgcalc.obj \
msgget.obj \
msglist.obj \
msglogo.obj \
msgmeter.obj \
msgrun.obj \
msgtbar.obj \
netapi32.obj \
ng.obj \
objects.obj \
objfile.obj \
odata.obj \
odbc.obj \
odbc32.obj \
outlook.obj \
pdmenu.obj \
pdreport.obj \
pen.obj \
printer.obj \
radio.obj \
radmenu.obj \
random.obj \
ras32.obj \
rcolumn.obj \
rebar.obj \
rect.obj \
reg32.obj \
registry.obj \
report.obj \
rfile.obj \
rgroup.obj \
rline.obj \
rpreview.obj \
rrw.obj \
rtffile.obj \
say.obj \
scrllbar.obj \
selector.obj \
shellapi.obj \
slider.obj \
splitter.obj \
sqlerror.obj \
statics.obj \
statusba.obj \
tabs.obj \
tacctbl.obj \
tanimate.obj \
tcbrowse.obj \
tccolumn.obj \
tclipget.obj \
tcomm.obj \
tcomobj.obj \
tcompone.obj \
tctrsock.obj \
tdbase.obj \
tdbfcomp.obj \
tdbodbc.obj \
tdbodbcd.obj \
tddemlcl.obj \
tddemlsv.obj \
tdict.obj \
tdosprn.obj \
tdtpicke.obj \
tenhmeta.obj \
texstruc.obj \
tfield.obj \
tfile.obj \
tfilegtf.obj \
tform.obj \
tftp.obj \
tftpcli.obj \
tftpfile.obj \
tftpserv.obj \
tftpsess.obj \
tget.obj \
tgraph.obj \
theader.obj \
thtmlpag.obj \
timaglst.obj \
time.obj \
timer.obj \
tindex.obj \
tlex.obj \
tlib.obj \
tlistvie.obj \
tlocks.obj \
tmail.obj \
tmci.obj \
tmetafil.obj \
tmnucomp.obj \
tmsgitem.obj \
tnewsins.obj \
tnewssrv.obj \
todbc.obj \
toolbar.obj \
tordinfo.obj \
tpages.obj \
tpanel.obj \
tparser.obj \
tpop3.obj \
tprogres.obj \
tproxy.obj \
trackbar.obj \
tras.obj \
trdd.obj \
trddodbc.obj \
treeitem.obj \
trees.obj \
tresourc.obj \
trichedi.obj \
tsmtp.obj \
tsocket.obj \
tstring.obj \
tstruct.obj \
tsymbol.obj \
tsymtabl.obj \
ttabctrl.obj \
ttable.obj \
ttmpicke.obj \
ttray.obj \
ttreevie.obj \
ttvitem.obj \
ttxtedit.obj \
ttxtfile.obj \
tview.obj \
twebclie.obj \
twebserv.obj \
tyacc.obj \
urllink.obj \
valblank.obj \
vbxarray.obj \
video.obj \
wbrowse.obj \
window.obj \
wininet.obj \
wqout.obj \
xbrowse.obj \
xpad.obj \

#_index.obj \
# vbxctrl.obj \
# EXPBUILD.obj \
# DbgItem.obj \
# DbgStack.obj \
# DbgVar.obj

.prg.c:
C:\XHB\bin\XHB.exe $< /a/n/v/w/m /i$(FWHDIR)\include;C:\XHB\include /o$@
# >> FiveHX.log

.c.obj:
$(BCDIR)\bin\bcc32.exe $(BCC_OPT) -P- -c -tW -o$@ -I$(FWHDIR)\include;C:\XHB\include -DHARBOUR_USE_WIN_GTAPI -DHB_COMPAT_C53 $<
$(BCDIR)\bin\tlib.exe FiveHX.lib /P32 + $@ >>FiveHX.log

FiveHX.lib : $(FiveHX_LIB_OBJS)
echo Harbour dir: C:\XHB
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Mario,

Por favor, envíame ese fichero C como un archivo ZIP por email. Gracias,
regards, saludos

Antonio Linares
www.fivetechsoft.com
saviotti
Posts: 43
Joined: Thu Feb 15, 2007 7:45 pm
Location: Brasil
Contact:

Post by saviotti »

Arquivo já enviado para o seu email, Antônio verifique por favor, se o problema não é na geração da FIVEHX.LIB conforme enviei na mensagem anterior.

Gracias.

Mário
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Mario,

La librería FiveHX.lib NO tienes que generarla. Usa la que viene con FWH. No hay que compilarla.

En cuanto al fichero menus.c, tienes que cambiar los nombres de las funciones:

HARBOUR HB_FUN_CREATEMENU( PARAMS )

por

HB_FUNC( CREATEMENU )

así para todas las funciones.

y las funciones del sistema extendido que empiezar por _..., has de cambiarlas a hb_...
regards, saludos

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

Post by Antonio Linares »

Mario,

Si vas a usar xHarbour builder, entonces tienes que usar la librería FIVEHMX.lib en vez de FIVEHX.lib
regards, saludos

Antonio Linares
www.fivetechsoft.com
saviotti
Posts: 43
Joined: Thu Feb 15, 2007 7:45 pm
Location: Brasil
Contact:

Post by saviotti »

Antonio,

Coloquei FIVEHX.LIB que vem com FWH e TUTOR01.PRG já me arranca.

Agora o meu projeto não consigo fazé-lo funcionar.

Veja, lo problema continua, mesmo renomeando a função :

c:\fwh\include\ClipApi.h(71): error: Expecting an enumerator identifier. ( QUAL ERRO É ESTE )
c:\fwh\include\ClipApi.h(71): error: Syntax error; found '0' expecting '}'.
c:\fwh\include\ClipApi.h(463): error: Redeclaration of 'strlen' previously declared at C:\xHB\c_include\string.h(30): found 'unsigned short __cdecl function(char *)' expected 'unsigned int __cdecl function(const char *)'.
c:\fwh\include\ClipApi.h(464): error: Redeclaration of 'strcpy' previously declared at C:\xHB\c_include\string.h(27): found 'void __cdecl function(unsigned char *, unsigned char *)' expected 'char * __cdecl function(restrict char *, restrict const char *)'.
c:\fwh\include\ClipApi.h(465): error: Redeclaration of 'strcmp' previously declared at C:\xHB\c_include\string.h(25): found 'int __cdecl function(char *, char *)' expected 'int __cdecl function(const char *, const char *)'.
c:\fwh\include\ClipApi.h(466): error: Redeclaration of 'strcat' previously declared at C:\xHB\c_include\string.h(23): found 'unsigned char * __cdecl function(unsigned char *, unsigned char *)' expected 'char * __cdecl function(restrict char *, restrict const char *)'.
c:\fwh\include\ClipApi.h(511): warning: Missing type specifier.

MENUS.C(23): warning: Missing type specifier. ( VEJA LO ERRO CONTINUA )
MENUS.C(24): warning: Missing prototype for 'HB_FUNC'.

//----------------------------------------------------------------------------//
HB_FUNC( CREATEMENU )
{
_retnl( ( LONG ) CreateMenu() );
}
//----------------------------------------------------------------------------//

Gracias,

Mário
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Mario,

Como te he comentado por email, comenta la línea 71 de ClipApi.h que no debe ser compilada, ya que no es para 32 bits
regards, saludos

Antonio Linares
www.fivetechsoft.com
saviotti
Posts: 43
Joined: Thu Feb 15, 2007 7:45 pm
Location: Brasil
Contact:

Post by saviotti »

Antonio,

A comentado e seguem el erros :

c:\fwh\include\ClipApi.h(463): error: Redeclaration of 'strlen' previously declared at C:\xHB\c_include\string.h(30): found 'unsigned short __cdecl function(char *)' expected 'unsigned int __cdecl function(const char *)'.

c:\fwh\include\ClipApi.h(464): error: Redeclaration of 'strcpy' previously declared at C:\xHB\c_include\string.h(27): found 'void __cdecl function(unsigned char *, unsigned char *)' expected 'char * __cdecl function(restrict char *, restrict const char *)'.

c:\fwh\include\ClipApi.h(465): error: Redeclaration of 'strcmp' previously declared at C:\xHB\c_include\string.h(25): found 'int __cdecl function(char *, char *)' expected 'int __cdecl function(const char *, const char *)'.

c:\fwh\include\ClipApi.h(466): error: Redeclaration of 'strcat' previously declared at C:\xHB\c_include\string.h(23): found 'unsigned char * __cdecl function(unsigned char *, unsigned char *)' expected 'char * __cdecl function(restrict char *, restrict const char *)'.

c:\fwh\include\ClipApi.h(511): warning: Missing type specifier.

MENUS.C(23): warning: Missing type specifier.

MENUS.C(24): warning: Missing prototype for 'HB_FUNC'.

MENUS.C(26): warning: Missing return value.

MENUS.C(30): warning: Missing type specifier.

MENUS.C(33): warning: Missing return value.

MENUS.C(37): warning: Missing type specifier.

MENUS.C(41): warning: Missing return value.

MENUS.C(45): warning: Missing type specifier.

MENUS.C(48): warning: Missing return value.

MENUS.C(52): warning: Missing type specifier.

MENUS.C(55): warning: Missing return value.

MENUS.C(59): warning: Missing type specifier.

MENUS.C(62): warning: Missing return value.

MENUS.C(66): warning: Missing type specifier.

MENUS.C(69): warning: Missing return value.

MENUS.C(73): warning: Missing type specifier.

MENUS.C(76): warning: Missing return value.

MENUS.C(80): warning: Missing type specifier.

MENUS.C(83): warning: Missing return value.

MENUS.C(87): warning: Missing type specifier.

MENUS.C(90): warning: Missing return value.

MENUS.C(94): warning: Missing type specifier.

MENUS.C(101): warning: Missing return value.

MENUS.C(105): warning: Missing type specifier.

MENUS.C(108): warning: Missing return value.

MENUS.C(112): warning: Missing type specifier.

MENUS.C(115): warning: Missing return value.

MENUS.C(119): warning: Missing type specifier.

MENUS.C(123): warning: Missing return value.

MENUS.C(127): warning: Missing type specifier.

MENUS.C(132): warning: Missing return value.

MENUS.C(136): warning: Missing type specifier.

MENUS.C(140): warning: Missing return value.

MENUS.C(144): warning: Missing type specifier.

MENUS.C(147): warning: Missing return value.

MENUS.C(151): warning: Missing type specifier.

MENUS.C(156): warning: Missing return value.

MENUS.C(160): warning: Missing type specifier.

MENUS.C(164): warning: Missing return value.

MENUS.C(168): warning: Missing type specifier.

MENUS.C(173): warning: Missing return value.

MENUS.C(177): warning: Missing type specifier.

MENUS.C(400): warning: Missing return value.

MENUS.C(417): warning: Missing type specifier.

MENUS.C(422): warning: Missing return value.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Mario,

Al llamar al compilador de C pásale este parámetro:

-D__FLAT__
regards, saludos

Antonio Linares
www.fivetechsoft.com
saviotti
Posts: 43
Joined: Thu Feb 15, 2007 7:45 pm
Location: Brasil
Contact:

Post by saviotti »

Antonio,

Gracias a tua ajuda estou caminhando mas ainda me consta erros :


Type: C >>>xcc.exe -Fo"obj\MENUS.obj" -D__FLAT__ -I"c:\fwh\include" -I"C:\xHB\include" -I"C:\xHB\c_include" -I"C:\xHB\c_include\win" -I"C:\xHB\c_include\msvc" "MENUS.C"<<<

c:\fwh\include\ClipApi.h(511): warning: Missing type specifier.

MENUS.C(23): warning: Missing type specifier.

MENUS.C(24): warning: Missing prototype for 'HB_FUNC'.

MENUS.C(26): warning: Missing return value.

MENUS.C(30): warning: Missing type specifier.

MENUS.C(33): warning: Missing return value.

MENUS.C(37): warning: Missing type specifier.

MENUS.C(41): warning: Missing return value.

MENUS.C(45): warning: Missing type specifier.

MENUS.C(48): warning: Missing return value.

MENUS.C(52): warning: Missing type specifier.

MENUS.C(55): warning: Missing return value.

MENUS.C(59): warning: Missing type specifier.

MENUS.C(62): warning: Missing return value.

MENUS.C(66): warning: Missing type specifier.

MENUS.C(69): warning: Missing return value.

MENUS.C(73): warning: Missing type specifier.

MENUS.C(76): warning: Missing return value.

MENUS.C(80): warning: Missing type specifier.

MENUS.C(83): warning: Missing return value.

MENUS.C(87): warning: Missing type specifier.

MENUS.C(90): warning: Missing return value.

MENUS.C(94): warning: Missing type specifier.

MENUS.C(101): warning: Missing return value.

MENUS.C(105): warning: Missing type specifier.

MENUS.C(108): warning: Missing return value.

MENUS.C(112): warning: Missing type specifier.

MENUS.C(115): warning: Missing return value.

MENUS.C(119): warning: Missing type specifier.

MENUS.C(123): warning: Missing return value.

MENUS.C(127): warning: Missing type specifier.

MENUS.C(132): warning: Missing return value.

MENUS.C(136): warning: Missing type specifier.

MENUS.C(140): warning: Missing return value.

MENUS.C(144): warning: Missing type specifier.

MENUS.C(147): warning: Missing return value.

MENUS.C(151): warning: Missing type specifier.

MENUS.C(156): warning: Missing return value.

MENUS.C(160): warning: Missing type specifier.

MENUS.C(164): warning: Missing return value.

MENUS.C(168): warning: Missing type specifier.

MENUS.C(173): warning: Missing return value.

MENUS.C(177): warning: Missing type specifier.

MENUS.C(400): warning: Missing return value.

MENUS.C(417): warning: Missing type specifier.

MENUS.C(422): warning: Missing return value.

MENUS.C(426): warning: Missing type specifier.

MENUS.C(431): warning: Missing return value.

MENUS.C(435): warning: Missing type specifier.

MENUS.C(440): warning: Missing return value.

MENUS.C(444): warning: Missing type specifier.

MENUS.C(447): warning: Missing return value.

MENUS.C(451): warning: Missing type specifier.

MENUS.C(452): error: Redefinition of 'HB_FUNC' previously defined at MENUS.C(23).

MENUS.C(454): warning: Missing return value.

MENUS.C(458): warning: Missing type specifier.

MENUS.C(459): error: Redefinition of 'HB_FUNC' previously defined at MENUS.C(451).

MENUS.C(462): warning: Missing prototype for 'hb_parnl'.

MENUS.C(463): warning: Missing prototype for 'hb_parl'.

MENUS.C(468): warning: Missing prototype for 'hb_parc'.

MENUS.C(468): warning: Conversion from 'const char *' to 'int' is undefined.

MENUS.C(473): warning: Conversion from 'const char *' to 'int' is undefined.

MENUS.C(501): warning: Missing return value.

MENUS.C(504): warning: Missing type specifier.

MENUS.C(505): error: Redefinition of 'HB_FUNC' previously defined at MENUS.C(458).

MENUS.C(516): warning: Missing return value.

MENUS.C(519): warning: Missing type specifier.

MENUS.C(520): error: Redefinition of 'HB_FUNC' previously defined at MENUS.C(504).

MENUS.C(524): warning: Missing return value.

MENUS.C(526): warning: Missing type specifier.

MENUS.C(527): error: Redefinition of 'HB_FUNC' previously defined at MENUS.C(519).

MENUS.C(545): warning: Missing return value.

MENUS.C(547): warning: Missing type specifier.

MENUS.C(548): error: Redefinition of 'HB_FUNC' previously defined at MENUS.C(526).

MENUS.C(560): warning: Missing return value.


Type: C >>>Couldn't build: MENUS.obj<<<
Type: C >>>TMAKEOBJECT<<<
Type: C >>>TMAKEOBJECT:REFRESH<<<
Type: N >>> 1278<<<
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Mario,

> MENUS.C(452): error: Redefinition of 'HB_FUNC' previously defined at MENUS.C(23).

Puedes mostrarnos el código de las líneas 452 y 23 ? gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
saviotti
Posts: 43
Joined: Thu Feb 15, 2007 7:45 pm
Location: Brasil
Contact:

Post by saviotti »

Linha 23

HB_FUNC( CREATEMENU )
{
_retnl( ( LONG ) CreateMenu() );
}


Linha 452

HB_FUNC( _GETMENUID)
{
_retnl((LONG)GetMenu((HWND)_parnl(1)));
}
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Mario,

Que compilador de C estás usando ?

Por favor envíame de nuevo menus.c modificado como lo tienes ahora en un fichero ZIP, gracias
regards, saludos

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

Post by Antonio Linares »

Mario,

Aqui tienes menus.c arreglado y compilando correctamente:
http://rapidshare.com/files/32042330/MENUS.C.html
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply