Clipper On Line • Ver Tópico - Compilar exemplo usando gtwvw

Compilar exemplo usando gtwvw

Outras bibliotecas visuais e IDEs para Harbour/xHarbour (xHGTK/HbWxW/GtWvT/GtWvW/WvWtools.etc)

Moderador: Moderadores

 

Compilar exemplo usando gtwvw

Mensagempor Nascimento » 07 Mai 2014 22:58

Amigos peguei um exemplo com a gtwvw
eu consegui compilar ela com o harbour 3.2 /bcc

mais quando tento compilar um exemplo sempre da essa mensagem:
C:\testa\Pdv>hbmk2 demo
hbmk2: Compiling Harbour sources...
Harbour 3.2.0dev (r1404031226)
Copyright (c) 1999-2014, http://harbour-project.org/
Compiling 'demo.prg'...
Lines 1043, Functions/Procedures 17
Generating C source output to '.hbmk\win\bcc\demo.c'... Done.
hbmk2: Compiling...
.hbmk\win\bcc\demo.c:
hbmk2: Linking... cep.exe
Turbo Incremental Link 5.69 Copyright (c) 1997-2005 Borland
Error: Unresolved external '_HB_ISEVALITEM' referenced from C:\MINIGUI\HARBOUR\L
IB\GTWVW.LIB|wvwstbar
hbmk2[demo]: Error: Running linker. 2
ilink32.exe @C:\Users\Adm_Casa\AppData\Local\Temp\o8z5zk.lnk


o hbp é esse aqui

-inc
-lhbtip
-lgtwvw

-odemo

-w0 -es2

demo.prg


e o codigo que estou tentando compilar é esse aqui

/*
   PROG2.PRG
   Copyright 2004 Budyanto Dj. <budyanto@centrin.net.id>

   To present prettier displays we may want to use pseudo-GUI objects.
   This, however, is not as easy as the previous example.
   Once you understand how GTWVW draws these objects, you can put
   pseudo-GUI objects onto each window, one by one.

   Notes: GTWVW now also has native Windows Controls. See other samples.

   Compiling and linking in Clipper:
     clipper prog2 -m -n -w
     blinker file prog2

   See also
   Compiling and linking in xHarbour:
     requires GTWVW
*/

#include "common.ch"
#include "inkey.ch"
#include "setcurs.ch"

#IFDEF __HARBOUR__
  #DEFINE __GTWVW__
#ENDIF

static s_zwin := {}
static s_cStdColor := "N/W,N/GR*,,,N/W*"

#IFDEF __GTWVW__
static s_amiscobjlist := {}      //x misc object list (actually: list of codeblocks)
#ENDIF

proc main
local i,j
#IFDEF __GTWVW__
local lMainCoord := WVW_SetMainCoord( .t. )
local nMaxRow := maxrow(), nMaxCol := maxcol()
   WVW_SetFont(,"Lucida Console",16,-8)
   WVW_SetCodePage(,255)
   WVW_SBcreate()
#ENDIF

   SET SCOREBOARD OFF
   SetColor( s_cStdColor )
   setcursor(SC_NONE)
   CLS
   @ 0,0 say padc("This is the Main Window", maxcol()+1)

   * screen background
#IFNDEF __GTWVW__
   DISPBEGIN()
   for i := 1 to maxrow()-1
      for j := 0 to maxcol()
         devpos(i,j)
         devout("±")
      next
   next
   DISPEND()
#ELSE
   ResetMiscObjects(0)   //make sure we start with no GUI objects
   AddMiscObjects( 0, {|nWindow| WVW_DrawImage( nWindow, 1,0,nmaxrow,nmaxcol, 'vouch1.bmp' ) } )
#ENDIF

   lboxmessage("Welcome to our test program." + chr(13)+chr(10) +;
               "This program will show typical GET and BROWSE dialogs " +;
               "with brief help on the bottom of the screen.")
   xGet1()
   xBrowse1()
   lboxmessage("That's all folks")

   * restore state
   setcursor(SC_NORMAL)
return //main

procedure xGet1()
local nWin
local cName := padr("Name",20)
local cAddr := padr("Address",25)
local cPhone:= padr("Phone",15)
local cFax  := padr("Fax",15)
local lDone := .f.
local getlist := {}
local oldCurs := setcursor(SC_NORMAL)
#IFDEF __GTWVW__
MEMVAR __temp__
#ENDIF

   nWin := znewwindow("ÚÄ¿³ÙÄÀ³",10,20,22,59,"Some Window")

#IFDEF __GTWVW__
   AddMiscObjects( nWin, {|nWindow| __temp__:= nWindow, aEval( GetList, {|oGet| WVW_DrawBoxGet( __temp__, oGet:Row, oGet:Col, Len( Transform( oGet:VarGet(), oGet:Picture ) ) ) } ) } )
#ENDIF

   //@ 21,21 say "Inside the window" color "R/W"
   //@ 23,0  say "Outside the window" color "R/W"

   do while !lDone
      @ 12,22 say "Name    : " get cName  pict "@!K" when lMessage("Please enter your name")
      @ 14,22 say "Address : " get cAddr  pict "@!K" when lMessage("Please enter your address")
      @ 16,22 say "Phone   : " get cPhone pict "@K"  when lMessage("Please enter your phone number")
      @ 18,22 say "Fax     : " get cFax   pict "@K"  when lMessage("Please enter your fax number")
      read

      lMessage("")
      lDone := lyesno("Done?")
   enddo

   zrevwindow()

   setcursor(oldCurs)
return //xGet1()

/* the following is adapted from WVTGUI.PRG by Pritpal Bedi
   for illustration purposes only */
FUNCTION xBrowse1()
   LOCAL nKey, bBlock, oBrowse , i
   LOCAL lEnd    := .f.
   LOCAL info_   := {}
   LOCAL nTop    :=  6
   LOCAL nLeft   :=  3
   LOCAL nBottom := maxrow() - 2
   LOCAL nRight  := maxcol() - 3
   LOCAL nCursor := setCursor( 0 )
   LOCAL nWin

   USE 'TEST' NEW
   if NetErr()
      return nil
   endif
   info_:= DbStruct()

   SetColor( 'N/W*,N/GR*,,,N/W* ' )
   oBrowse := TBrowseNew( nTop + 1, nLeft + 1, nBottom - 1, nRight - 1 )

#IFNDEF __GTWVW__
   oBrowse:ColSep        = chr(179) //'|'
   oBrowse:HeadSep       = chr(205) //'_'
#ELSE
   oBrowse:ColSep        = "  "     //we'll draw a line between these spaces
   oBrowse:HeadSep       = "__"
#ENDIF
   oBrowse:GoTopBlock    = { || dbGoTop() }
   oBrowse:GoBottomBlock = { || dbGoBottom() }
   oBrowse:SkipBlock     = { | nSkip | dbSkipBlock( nSkip,oBrowse ) }

   for i := 1 to len( info_ )
      bBlock := VouBlockField( i )
      oBrowse:AddColumn( TBColumnNew( info_[ i,1 ], bBlock ) )
   next

   oBrowse:configure()

   nWin := znewwindow("ÚÄ¿³ÙÄÀ³",nTop,nLeft,nBottom,nRight, "Test.dbf")

#IFDEF __GTWVW__
   Wvw_SetPen( 0, 0, rgb( 210,1210,210 ) )

   AddMiscObjects( nWin, {|nWindow| WVW_DrawBoxRecessed( nWindow, nTop+1, nLeft+1, nBottom-1, nRight-1 ) } )
   AddMiscObjects( nWin, {|nWindow| WVW_DrawGridHorz( nWindow, oBrowse:nTop+3, oBrowse:nLeft, oBrowse:nRight, oBrowse:nBottom - oBrowse:nTop - 2 ) } )
   AddMiscObjects( nWin, {|nWindow| WVW_DrawGridVert( nWindow, oBrowse:nTop, oBrowse:nBottom, oBrowse:aColumnsSep, len( oBrowse:aColumnsSep ) ) } )
#ENDIF

   While !lEnd
      oBrowse:ForceStable()

      lMessage("Record #" + alltrim(str(recno())) )

      nKey = InKey( 0 )

      do case
      case nKey == K_ESC .or. nKey == K_ENTER
         lEnd := lYesNo("Done?")
      case nKey == K_DOWN
         oBrowse:Down()
      case nKey == K_UP
         oBrowse:Up()
      case nKey == K_LEFT
         oBrowse:Left()
      case nKey == K_RIGHT
         oBrowse:Right()
      case nKey = K_PGDN
         oBrowse:pageDown()
      case nKey = K_PGUP
         oBrowse:pageUp()
      case nKey = K_CTRL_PGUP
         oBrowse:goTop()
      case nKey = K_CTRL_PGDN
         oBrowse:goBottom()
      case nKey = K_HOME
         oBrowse:home()
      case nKey = K_END
         oBrowse:end()
      case nKey = K_CTRL_LEFT
         oBrowse:panLeft()
      case nKey = K_CTRL_RIGHT
         oBrowse:panRight()
      case nKey = K_CTRL_HOME
         oBrowse:panHome()
      case nKey = K_CTRL_END
         oBrowse:panEnd()
      endcase
   end

   lMessage("")

   zrevwindow()

   * restore state
   SetCursor( nCursor )

   DBCloseArea()
RETURN nil
//-------------------------------------------------------------------//
STATIC FUNCTION DbSkipBlock( n, oTbr )
   LOCAL nSkipped := 0
   if n = 0
      DBSkip( 0 )
   elseif n > 0
      do while nSkipped != n .and. TBNext( oTbr )
         nSkipped++
      enddo
   else
      do while nSkipped != n .and. TBPrev( oTbr )
         nSkipped--
      enddo
   endif
RETURN  nSkipped

//-------------------------------------------------------------------//
STATIC FUNCTION TBNext( oTbr )
   LOCAL nSaveRecNum := recno()
   LOCAL lMoved := .T.
   if Eof()
      lMoved := .F.
   else
      DBSkip( 1 )
      if Eof()
         lMoved := .F.
         DBGoTo( nSaveRecNum )
      endif
   endif
RETURN lMoved
//-------------------------------------------------------------------//
STATIC FUNCTION TBPrev( oTbr )
   LOCAL nSaveRecNum := Recno()
   LOCAL lMoved := .T.
   DBSkip( -1 )
   if Bof()
      DBGoTo( nSaveRecNum )
      lMoved := .F.
   endif
RETURN lMoved
//-------------------------------------------------------------------//
STATIC FUNCTION VouBlockField( i )
RETURN  {|| fieldget( i ) }

// supporting functions ***************************

function lMessage(cMsg)

#IFNDEF __GTWVW__

* displays a message on maxrow() and returns .t.
local cOldColor := setcolor(s_cStdColor)
  @ maxrow(), 0 say padc(cMsg, maxcol()+1)
  setcolor(cOldColor)

#ELSE

* displays a message on status bar of Main Window and returns .t.
wvw_SBsettext(0, 0, cMsg)

#ENDIF

return .t.

function lYesNo(cMsg)
* display cmsg with Yes/No option, returns .t. if Yes selected
local nTopLine, ;
      nLeft := 5, ;
      nBotLine := maxrow()-2,;
      nRight := maxcol()-5
local nChoice, nWidth, nWinNum
local oldCurs := setcursor(SC_NONE)
local oldColor := setcolor(s_cStdColor)

   default cMsg to "Please Confirm"

   cmsg := " " + alltrim(cmsg) + " "
   nWidth := max(len(cmsg), len("Yes"))
   nTopLine := nBotLine-2-1

   nLeft := max(nLeft, ((nRight+nLeft)*.5)-(nWidth*.5)-1)
   nRight := nLeft + nWidth + 1

   * open window
   nWinNum := znewwindow("ÚÄ¿³ÙÄÀ³", nTopLine, nLeft, nBotLine, nRight, cMsg)

   @ nTopLine+1, nLeft+1 PROMPT padr("Yes", nWidth)
   @ nTopLine+2, nLeft+1 PROMPT padr("No", nWidth)
   MENU TO nChoice

   * close window
   zrevwindow()

   setcursor(oldCurs)
   setcolor(oldColor)
return (nChoice==1)

function lBoxMessage(cMsg, cTitle)
local nTopLine, ;
      nLeft := 5, ;
      nBotLine := maxrow()-2,;
      nRight := maxcol()-5
local nwidth, nmaxwidth, i, nNumLines, cAline, nWinNum
local oldCurs := setcursor(SC_NONE)
local oldColor := setcolor(s_cStdColor)

   default cTitle to "Info"

   cmsg := alltrim(cmsg)
   nNumLines := MLCOUNT(cmsg,(nright-nleft)-1)
   nWidth := iif(nNumLines<2, len(cmsg), nRight-nLeft-1)
   nTopLine := nBotLine-nNumLines-1
   if nTopLine < 0            //too many lines to display
      nNumLines += nTopLine
      nTopLine := 0
   endif

   nMaxWidth := 0
   for i := 1 to nNumLines
      nMaxWidth := MAX(nMaxWidth, len(trim(memoline(cmsg,nwidth,i))))
   next

   nLeft := max(nLeft, INT( ((nRight+nLeft)/2)-(nMaxWidth/2)-1 ) )
   nRight := nLeft + nMaxWidth + 1

   * open window
   nWinNum := znewwindow("ÚÄ¿³ÙÄÀ³", nTopLine, nLeft, nBotLine, nRight, cTitle)
   DISPBEGIN()
   for i := 1 to nNumLines
     cAline := MEMOLINE(cMsg, nWidth, i)
     devpos(nTopLine+i, nLeft+1)
     devout(padc(alltrim(cAline), nMaxWidth))
   next
   DISPEND()

   inkey(0)

   * close window
   zrevwindow()

   setcursor(oldCurs)
   setcolor(oldColor)
return .t.

FUNCTION ZNEWWINDOW(wtype,r1,c1,r2,c2,ctitle, ccolor)
* Draw a new window on screen and register it in window list
* wtype       : Window border type, eg. "ÚÄ¿³ÙÄÀ³"
* r1,c1,r2,c2 : coordinates
* Return      : Numeric id of the new window
  local i:=len(s_zwin)
  local cScreen := savescreen(r1,c1,r2,c2)
  local cOldColor := SETCOLOR()
  local nrow := row(), ncol := col()

  default ctitle to ""
  default ccolor to s_cStdColor
  setcolor(ccolor)

#IFDEF __GTWVW__
  WVW_nOpenWindow(ctitle, r1, c1, r2, c2)
  ResetMiscObjects(NIL)   //make sure we start with no GUI objects
#ENDIF

  AADD(s_zwin,{i+1, r1, c1, r2, c2, cScreen, ctitle, nrow, ncol, coldcolor})

  SETCOLOR(ccolor)

  scroll(r1, c1, r2, c2)

#IFNDEF __GTWVW__
  * GTWVW doesn't need box or textual title
  DISPBOX(r1,c1,r2,c2,wtype)
  if !empty(ctitle)
     cTitle := " " + alltrim(ctitle) + " "
     DevPos( r1, nCeiling( (c2+c1-len(cTitle))/2 ) )
     DevOut( cTitle )
  endif
#ENDIF

  SETCOLOR(cOldColor)
RETURN(i+1)

FUNCTION ZREVWINDOW()
* Closes the last window and remove it from window list
  local i := len(s_zwin)

  if i == 0
     * no window to close
     return NIL
  endif

#IFDEF __GTWVW__
  ResetMiscObjects(NIL)   //clear all GUI objects, if any
  WVW_lCloseWindow()
#ENDIF

  * restore states
  restscreen(s_zwin[i][2], s_zwin[i][3], s_zwin[i][4], s_zwin[i][5], s_zwin[i][6])
  setpos(s_zwin[i][8], s_zwin[i][9])
  setcolor(s_zwin[i][10])

  * remove window from list
  adel(s_zwin, i)
  asize(s_zwin, len(s_zwin)-1)
RETURN(NIL)

function nCeiling(nNumber)
local nTemp
   nTemp := nNumber - INT(nNumber)  //right of dec point
   if nTemp>0
      nNumber := INT(nNumber) + 1
   else
      nNumber := INT(nNumber)
   endif
return nNumber

#IFDEF __GTWVW__
//-------------------------------------------------------------------//
//      WVW_Paint() must be a FUNCTION in your application
//      as it is called when Window gets WM_PAINT message.
//WARNING: it now receives only nWinNum parameter
//-------------------------------------------------------------------//
FUNCTION WVW_Paint( nWinNum )
   if len(s_amiscobjlist) >= nWinNum+1
      aeval( s_amiscobjlist[nWinNum+1], {|e| eval( e, nWinNum )} )
   endif

RETURN 0

function ResetMiscObjects( nWinNum )
   default nWinNum to WVW_nNumWindows()-1

   do while len(s_amiscobjlist) < nWinNum+1
      aadd( s_amiscobjlist, {} )
   enddo
   s_amiscobjlist[ nWinNum+1 ] := {}
return .t.

function AddMiscObjects( nWinNum, bAction )
   aadd( s_amiscobjlist[ nWinNum+1 ], bAction )
return .t.

STATIC FUNCTION rgb( r,g,b )

RETURN ( r + ( g * 256 ) + ( b * 256 * 256 ) )

#ENDIF


lembrando que estou usando Harbour 3.2 e Bcc

Agradeço desde Ja A todos
att: Josivan Nascimento
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Compilar exemplo usando gtwvw

Mensagempor Toledo » 08 Mai 2014 09:15

Josivan Nascimento escreveu:Amigos peguei um exemplo com a gtwvw
eu consegui compilar ela com o harbour 3.2 /bcc

Josivan, você conseguiu compilar a lib da gtwvw?

A gtwvw vem com os fontes de Harbour em uma pasta Extras, então geralmente esta lib não vem compilada e nem na versão já compilada do Harbour (binários), na pasta lib você vai encontrar esta lib já compilada.

Josivan Nascimento escreveu:mais quando tento compilar um exemplo sempre da essa mensagem:

Nesta sua compilação tem algumas coisas estranhas:

Josivan Nascimento escreveu:C:\testa\Pdv>hbmk2 demo

Se você criou um arquivo HBP para compilar este demo, então o comando correto seria: hbmk2 demo.hbp

Josivan Nascimento escreveu:hbmk2: Linking... cep.exe

Não faz sentido esta mensagem... o arquivo que você está compilando é o demo.prg e no arquivo HBP você definiu o nome do EXE como demo.exe (-odemo).

Josivan Nascimento escreveu:Error: Unresolved external '_HB_ISEVALITEM' referenced from C:\MINIGUI\HARBOUR\L
IB\GTWVW.LIB|wvwstbar

Aqui tem duas coisas estranhas: em nenhum dos arquivos fontes da gtwvw tem o uso desta HB_ISEVALITEM, principalmente no arquivo wvwstbar indicado na mensagem de erro. Outra coisa é que você está usando a GTWVW.LIB de uma pasta do Harbour que vem com a MiniGui. Bom, como já disse acima, esta LIB gtwvw não vem compilada, inclusive no Harbour que vem com a MiniGui.
E na versão do Harbour que vem com a MiniGui é um versão compacta, não tem o código fonte do Harbour e nem as pastas Contrib e Extras, então sem a pasta Extras, você não teria os fontes da gtwvw para fazer a compilação desta lib.

Não sei dizer porque a gtwvw vem na pasta Extras do Harbour e não vem compilada, já as outras lib gt estão na pasta Contrib e já vem todas compiladas no Harbour binário.

Bom, no Harbour você pode encontrar a gtwvg (ou gtwvt) que tem praticamente os mesmos recursos da gtwvw. Faça a instalação do Harbour 3.2 (neste tópico tem o link para download) e veja a pasta C:\hb32\contrib\gtwvg\tests, para compilar o demo digite:

hbmk2 demowvg.prg

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Compilar exemplo usando gtwvw

Mensagempor Nascimento » 08 Mai 2014 15:39

é que eu baixei o soucer code do harbour 3.2 ai gerei a lib apos gerar coloquei na pasta entendeu ai nao consegui compilar essa aplicaçao
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Compilar exemplo usando gtwvw

Mensagempor Toledo » 08 Mai 2014 16:43

Ok, mas agora resta saber com qual das duas versões do Harbour, que você tem instalado no seu computador, você está compilando este demo. É com a versão que tem o source code do Harbour 3.2, que você baixou, ou a versão que vem com a MiniGui?

Tem que tomar muito cuidado quando se tem no mesmo computador várias versões do Harbour, pois uma LIB só vai funcionar corretamente se for usada com a mesma versão do Harbour em que foi compilada. Pode acontecer que a versão do Harbour que está com a MiniGui não seja a mesma do Harbour 3.2 que você baixou.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Compilar exemplo usando gtwvw

Mensagempor Nascimento » 08 Mai 2014 16:53

com o soucer code do harbour 3.2
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Compilar exemplo usando gtwvw

Mensagempor Toledo » 08 Mai 2014 18:45

Então compilação do demo tá misturando as coisas, pois na mensagem abaixo o Harbour 3.2 está buscando as LIBs na pasta da MiniGui.

Josivan Nascimento escreveu:Error: Unresolved external '_HB_ISEVALITEM' referenced from C:\MINIGUI\HARBOUR\L
IB\GTWVW.LIB|wvwstbar


Com o Harbour 3.2 você tentou compilar o C:\hb32\contrib\gtwvg\tests\demowvg.prg?

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Compilar exemplo usando gtwvw

Mensagempor Nascimento » 08 Mai 2014 21:56

vou te explicar ... eu peguei a pasta da gtwvw do soucer code do harbour 3.2

e a compilei peguei a lib gerada e coloquei na pasta c:\minigui\harbour\lib

que nao vem nela entendeu agora?
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Compilar exemplo usando gtwvw

Mensagempor Toledo » 09 Mai 2014 08:17

Ok, entendi!

Bom, fiz um teste aqui compilando a lib gtwvw e depois compilei o seu demo.prg (código que você postou neste tópico) e também compilei o arquivo prog2.prg que está na pasta C:\hb32\extras\gtwvw\tests.

O arquivo prog2.prg tem praticamente o mesmo código do seu demo.prg, eu fiz apenas uma alteração no arquivo prog2.prg, troquei o comando USE "..\..\..\tests\test" NEW por apenas USE test NEW.

Segue em anexo os arquivos compilados.

Atenção: o seu demo.prg está com alguns erros na apresentação do Browse, não consegui identificar onde está o erro, então no anexo está os PRG do seu demo e também do prog2.prg, compare os dois e veja o que tem de errado.

Abraços,
Anexos
testgtwvw.zip
(1.81 MiB) Baixado 293 vezes
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Compilar exemplo usando gtwvw

Mensagempor Nascimento » 09 Mai 2014 10:09

mano toledo acho que é realmente erro na criaçao da lib por que deu o mesmo erro _HB_ISEVALITEM
deixe isso queto depois analizo melhor como se diz no dialeto popular nao vamos gastar vela com santo ruim
depois instalo o harbour 3.2 e analizo melhor pode ser o que vc disse a minigui nao vem com o harbour completo ai pode ser problema na hora de gerar a lib
mais muito obrigado pela atençao

de qualquer forma muito obrigado pela atenção disponibilizada
Att: josivan Nascimento
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar de usuário

Nascimento
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 711
Data de registro: 19 Jul 2008 12:11
Cidade/Estado: OLINDA-PE
Curtiu: 110 vezes
Mens.Curtidas: 76 vezes

Compilar exemplo usando gtwvw

Mensagempor Toledo » 09 Mai 2014 11:28

Josivan Nascimento escreveu:pode ser o que vc disse a minigui nao vem com o harbour completo ai pode ser problema na hora de gerar a lib

Este não é o caso, pois o Harbour que vem com a MiniGui tem tudo para compilar uma LIB. O problema deve ser outro.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Compilar exemplo usando gtwvw

Mensagempor syslink » 31 Mai 2021 14:29

tava tentano compila novamente um exemplo usano a hmg
so q a versao hmg 3.5 nao compila mais?
qual versao consigo compilar por ide exemplo wvw?
syslink
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 132
Data de registro: 20 Fev 2018 13:13
Cidade/Estado: joinvile/sc
Curtiu: 3 vezes
Mens.Curtidas: 3 vezes

Compilar exemplo usando gtwvw

Mensagempor syslink » 01 Jun 2021 21:53

hbmk2: Processando script local: hbmk.hbm
hbmk2[cb1]: Aten‡Æo: NÆo ‚ poss¡vel encontrar o gtwvw.hbc (referenciado por
hbmk.hbm)
hbmk2[cb1]: Aten‡Æo: NÆo ‚ poss¡vel encontrar o gtwvw.hbc (referenciado por
C:\hmg.3.4.2\HARBOUR\contrib\gtwvw\tests\cb1.hbp)
Harbour 3.2.0dev (r1509031202)
Copyright (c) 1999-2015, http://harbour-project.org/
C:/Users/AppData/Local/Temp/hbmk_k2lqld.dir/cb1.o:cb1.c:(.data+0x48): undefined reference to `HB_FUN_WVW_SETTITLE'
C:/Users/AppData/Local/Temp/hbmk_k2lqld.dir/cb1.o:cb1.c:(.data+0x58): undefined reference to `HB_FUN_WVW_NOCLOSE'
C:/hmg.3.4.2/mingw/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../i686-w64-mingw32/bin/ld.exe: C:/Users/AppData/Local/Temp/hbmk_k2lqld.dir/cb1.o: bad reloc address 0x58 in section `.data'
C:/hmg.3.4.2/mingw/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../i686-w64-mingw32/bin/ld.exe: final link failed: Invalid operation
collect2.exe: error: ld returned 1 exit status
hbmk2[cb1]: Erro: Executando linkeditor. 1


onde está o erro?

compilano com BAT e via IDE apresenta o erro de nao encontra a lib wvw
se em configuracoes da IDE a gente coloca LIBS=GTWVW ainda assim...
o erro muda
mas
nao roda

veja

hbmk2: Processando script local: hbmk.hbm
hbmk2[cb1]: Aten‡Æo: NÆo ‚ poss¡vel encontrar o gtwvw.hbc (referenciado por
hbmk.hbm)
hbmk2[cb1]: Aten‡Æo: NÆo ‚ poss¡vel encontrar o gtwvw.hbc (referenciado por
C:\hmg.3.4.2\HARBOUR\contrib\gtwvw\tests\cb1.hbp)
Harbour 3.2.0dev (r1509031202)
Copyright (c) 1999-2015, http://harbour-project.org/
C:/hmg.3.4.2/mingw/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lgtwvw
collect2.exe: error: ld returned 1 exit status
hbmk2[cb1]: Erro: Executando linkeditor. 1


mas, onde esta o erro
syslink
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 132
Data de registro: 20 Fev 2018 13:13
Cidade/Estado: joinvile/sc
Curtiu: 3 vezes
Mens.Curtidas: 3 vezes

Compilar exemplo usando gtwvw

Mensagempor microvolution » 10 Jun 2021 15:29

syslink escreveu:C:/hmg.3.4.2/mingw/bin/../lib/gcc/i686-w64-mingw32/4.9.2/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lgtwvw
collect2.exe: error: ld returned 1 exit status
hbmk2[cb1]: Erro: Executando linkeditor. 1


é por essa e outras razões que estou pendurando a chuteira. São poucos que estão usando essas libs que tinha tudo pra ser as melhores, mas, as divisões entre os mantenedores e desunião, estão "afundando o barco no porto que não é mais seguro".

Eu larguei de vez a WVW e estou apenas com a GTWVG que está inclusa dentro da HMG 3.5. E, por falar em 3.5, fizemos uma alteração significante na HMG 3.5 que passamos a chamar de HMG 3.5.0.1 para literalmente juntar as duas libs GWTVG + MINIGUI, e, suas interfaces gráficas e console num único programa sem gerar erro de conflito entre elas.

No meu caso, está rodando redondinho.

Mas voltando à lib GTWVW, não sei porque ela não vem mais na HMG 3.5.x, pois foi retirada já na versão 3.4.4, sendo a última que usei para testes foi na HMG 3.4.2, onde ela vinha na pasta CONTRIBS.

Bom, se eu pudesse ajudar, com certeza estaria aqui contribuindo para todos do fórum, mas, como disse, são poucos os que estão interessados nas libs. Talvrez o JoséQuintas ou o próprio Toledo, possam contribuir com alguma coisa, se eles, assim, acharem conveniente.
Grato,
MICROVOLUTION - 16 anos Evoluindo Com Você!


Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!
microvolution
Usuário Nível 5

Usuário Nível 5
 
Mensagens: 1175
Data de registro: 02 Set 2011 22:17
Curtiu: 59 vezes
Mens.Curtidas: 17 vezes

Compilar exemplo usando gtwvw

Mensagempor Itamar M. Lins Jr. » 10 Jun 2021 15:57

Olá!
Esses são passos simples, de configuração.
Devemos aprender a usar o HBMK2. Facilita muito.
O que é um arquivo .HBC ? O que é um arquivo .HBP ?
Como funcionar o HBMK2 ?
Outras linguagens de programação, Python, Java, Lazarus(IDE e Object PASCAL) não são assim tão fáceis também.
Porque as perguntas, na sua maioria tentam "QUEIMAR/PULAR" etapas. O pessoal quer ir logo para compilar um PRG e não sabem configurar o ambiente de trabalho.

essas libs que tinha tudo pra ser as melhores,

Não tinham e não são.
São incompletas e abandonadas pelos seus desenvolvedores.
Ironia é a pessoa abrir a IDE da MINIGUI e USAR WVW/WVG.
Os videos do Ivanil Marcelino no Youtube, são excelentes tutores para USAR A MINIGUI com SQL, TELAS, RELATÓRIOS...


Ai, como o pessoal gosta de andar na contramão quer usar Hwgui com WVG, Minigui com WVW... Tem TUDO para dar errado!

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Compilar exemplo usando gtwvw

Mensagempor JoséQuintas » 10 Jun 2021 19:43

Itamar M. Lins Jr. escreveu:i, como o pessoal gosta de andar na contramão quer usar Hwgui com WVG, Minigui com WVW... Tem TUDO para dar errado!


E no caso dele é minigui + gtwvg + gtwvw
Tudo de uma vez, aí complica mais ainda.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Próximo



Retornar para Outras Bibliotecas Visuais e IDEs

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 5 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro