FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index All products support Ricompilare le librerie FWH
Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 11:10 AM

In fase di esecuzione di EXE non vengono visualizzate le icone.

Mi 猫 stato detto di ricompilare le librerie FWH, cosa che 猫 stata fatta (猫 stata ricompilata la libreria \FWH\LIB\fivehx.lib) ma il problema persiste.

Qualcuno s脿 darmi una mano ed al limite fornirmi le istruzioni ed i file .BAT per ricompilarle.

Grazie, Andrea.

Andrea Errigo
info@andreaerrigo.it
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Re: Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 11:29 AM
aerrigo wrote:In fase di esecuzione di EXE non vengono visualizzate le icone.


Spiegati meglio, che intendi dire? Magari con due righe di PRG compilabile che mostrino il problema sarebbe pi霉 facile aiutarti.

EMG
Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 11:41 AM

PROCEDURE main()

LOCAL oBar

SET DATE british
SET EPOCH TO 1940
SET DATE FORMAT "dd/mm/yyyy"
SET DELETED on
SET DECIMAL TO 2

DEFINE WINDOW oWnd  ;
            TITLE "Test"        ;
ICON "geoage"       ;

MENU Buildmenu()

            SET MESSAGE OF oWnd TO ""       ;
            TIME                                ;
            DATE                                ;
            KEYBOARD


   oMsg:=oWnd:oMsgBar

   DEFINE BUTTONBAR oBar OF oWnd 3DLOOK   ;
   SIZE 46,46

   DEFINE BUTTON NAME "UTENTI" OF oBar TOOLTIP "Utenti" ;
   NOBORDER                         ;
   ACTION Utenti()

   DEFINE BUTTON NAME "AZIENDE" OF oBar TOOLTIP "Prova" ;
   NOBORDER                         ;
   ACTION nil

   DEFINE BUTTON NAME "COMUNI" OF oBar TOOLTIP "Prova2" ;
   NOBORDER                         ;
   ACTION nil

   DEFINE BUTTON NAME "ANAZIE" OF oBar TOOLTIP "Prova3" ;
   NOBORDER                         ;
   ACTION nil

   DEFINE BUTTON NAME "uscita"   OF oBar TOOLTIP "Termina il programma" ;
  NOBORDER                         ;
  GROUP                            ;
  ACTION oWnd:End()

  ACTIVATE WINDOW oWnd MAXIMIZED     VALID If( MsgYesNo( "Sei sicuro di voler chiudere Test ?","Avvertenza"), .T., .F. )    ;
    ON PAINT ( FillBlue( oWnd ), Sfondo( hDc, oWnd ) )

RETURN

----EOF MAIN.PRG

Il problema 猫 che il codice sopra riportato punta ad un .RES esterno e compilato su un PC, le icone si vedono, su un'altra macchina quando si clicca sull'icona Utenti viene restituito il seguente errore :

Application

Path and name: G:\FWH\XXXX\p.exe (32 bits)
Size: 1,510,400 bytes
Time from start: 0 hours 0 mins 2 secs
Error occurred at: 31/10/2006, 12:36:37
Error description: Error FiveWin/3 Cannot create Dialog Box:
每每每每每每每每每每每每每每每每每每每每每每Resource: UTENTI

Stack Calls

Called from CREATEDLGERROR(0)
Called from TDIALOG:ACTIVATE(0)
Called from UTENTI(50)
Called from (b)MAIN(38)
Called from TBTNBMP:CLICK(0)
Called from TBTNBMP:LBUTTONUP(0)
Called from TWINDOW:HANDLEEVENT(0)
Called from TBTNBMP:HANDLEEVENT(0)
Called from _FWH(0)
Called from WINRUN(0)
Called from TWINDOW:ACTIVATE(0)
Called from MAIN(61)

Il programma UTENTI.PRG 猫 indicato di seguito :

include "fivewin.ch"

Function Utenti()
LOCAL oDlg,oLbx
LOCAL cLbx,nRec,lCanc

USE UTENTI NEW

INDEX ON UTENTI->UTE_DES TO UTENTI

DEFINE DIALOG oDlg RESOURCE "UTENTI" TITLE "Utenti"

oDlg:lHelpIcon := .f.
lCanc := .F.
nRec := Lastrec()

REDEFINE LISTBOX oLbx var cLbx ;
FIELDS UTENTI->UTE_COD,UTENTI->UTE_DES,UTENTI->UTE_PWD,UTENTI->UTE_AZI ;
HEADERS "UTE_COD", "UTE_DES","UTE_PWD","UTE_AZI" ;
FIELDSIZES 80, 150,100,10 ;
ID 101 OF oDlg

oLbx:aJustify = { .f., .f.,.f.,.f.}
oLbx:lFocused := .T.

REDEFINE BUTTON ID 201 OF oDlg ;
ACTION NuovoUtente(oLbx)

REDEFINE BUTTON ID 202 OF oDlg ;
ACTION SchedaUtenti(oLbx)

REDEFINE BUTTON ID 203 OF oDlg ;
ACTION CercaUtent( oLbx )

REDEFINE BUTTON ID 204 OF oDlg ;
WHEN nRec > 0 ;
ACTION ( If( MsgYesNo("Elimino l'utente in evidenza?", "Avvertenza!"), ;
( UTENTI->( Elimina(oLbx) ), ;
lCanc:=.T.), ;
oLbx:SetFocus() ))

REDEFINE BUTTON ID 205 OF oDlg ;
ACTION oDlg:End()

ACTIVATE DIALOG oDlg CENTER

CLOSE UTENTI

Return Nil
Function SchedaUtenti(oLbx)

Ciao, Andrea.

Andrea Errigo
info@andreaerrigo.it
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 11:50 AM
aerrigo wrote:Il problema 猫 che il codice sopra riportato punta ad un .RES esterno


Un .RES non pu貌 essere esterno, deve per forza essere inglobato nell'EXE. Solo una DLL pu貌 essere esterna. Controlla che nell'EXE ci siano le risorse aprendolo con il Resource Workshop o altro editor di risorse.

EMG
Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 11:57 AM
EnricoMaria wrote:
aerrigo wrote:Il problema 猫 che il codice sopra riportato punta ad un .RES esterno


Un .RES non pu貌 essere esterno, deve per forza essere inglobato nell'EXE. Solo una DLL pu貌 essere esterna. Controlla che nell'EXE ci siano le risorse aprendolo con il Resource Workshop o altro editor di risorse.

EMG


Si scusa, le risorse sono nel .EXE, ed in effetti aprendo i 2 .EXE in quello che non visualizza le icone, non c'猫 praticamente niente.

Sai dirmi cosa posso controllare poich猫 "a prima vista" l'ambiente 猫 identico, solo che su un PC c'猫 Win XP e sull'altro Win 2000 PRO, l'unica differenza mi sembra questa.

Ciao, Andrea.
Andrea Errigo
info@andreaerrigo.it
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 12:00 PM

La versione di Windows non fa alcuna differenza. Devi controllare il batch di compilazione e in particolare il punto in cui il linker inserisce le risorse nell'EXE.

EMG

Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 12:39 PM
EnricoMaria wrote:La versione di Windows non fa alcuna differenza. Devi controllare il batch di compilazione e in particolare il punto in cui il linker inserisce le risorse nell'EXE.

EMG


Il file per linkare 猫 questo :
@ECHO OFF
CLS

rem set paths

IF "%BOCC%"=="" SET BOCC=d:\Fwh\bcc55
IF "%ROOT%"=="" SET ROOT=d:\Fwh

IF exist %1.exe del %1.exe

REM linka

%BOCC%\bin\ilink32 -Gn -Tpe -aa -L%BOCC%\lib; @Flink32.bc

e il Flink32.bc 猫 questo :

c0w32.obj +
@ListObjs.rsp, +
p.exe, +
p.map, +
@ListLibs.rsp,
p.res

Fra l'altro sono gli stessi che stanno sul'altro PC.

Ciao, Andrea.
Andrea Errigo
info@andreaerrigo.it
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 12:49 PM

La sintassi non mi sembra corretta (non ci vuole il punto e virgola dopo il percorso delle librerie e tra la lista delle librerie e il RES c'猫 il parametro opzionale deffile) per貌 se dici che sull'altro PC funziona...

Magari prova a portare tutto (ma proprio tutto) l'ambiente da un PC all'altro e vedi se funziona.

Altro non mi viene in mente.

EMG

Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 01:01 PM
EnricoMaria wrote:La sintassi non mi sembra corretta (non ci vuole il punto e virgola dopo il percorso delle librerie e tra la lista delle librerie e il RES c'猫 il parametro opzionale deffile) per貌 se dici che sull'altro PC funziona...

Magari prova a portare tutto (ma proprio tutto) l'ambiente da un PC all'altro e vedi se funziona.

Altro non mi viene in mente.

EMG


Ora nel file L.bat 猫 cos矛 :
%BOCC%\bin\ilink32 -Gn -Tpe -aa -L%BOCC%\lib @Flink32.bc

A quale parametro opzionale ti riferisci ?

Ciao, Andrea.
Andrea Errigo
info@andreaerrigo.it
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 05:38 PM
deffile. Dalla documentazione:

ILINK32 [@respfile][options] startup myobjs, [exe], [mapfile], [libraries], [deffile], [resfile]


EMG
Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 05:51 PM
EnricoMaria wrote:deffile. Dalla documentazione:

ILINK32 [@respfile][options] startup myobjs, [exe], [mapfile], [libraries], [deffile], [resfile]


EMG


Si, scusa avrai notato che non sono una scheggia.

Ma da qualche parte non c'猫 una documentazione di riferimento ?

Grazie, Andrea.
Andrea Errigo
info@andreaerrigo.it
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Ricompilare le librerie FWH
Posted: Tue Oct 31, 2006 06:05 PM

S矛, certo. E' appunto da quella che ho tratto la sintassi che ti ho citato. La puoi scaricare dal sito della Borland. Oppure mi scrivi in privato e te la mando io.

EMG

Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Compilazione Librerie
Posted: Tue Oct 31, 2006 06:09 PM

Caro Enrico,

volevo ringraziarti, ho risolto il problema.

Sinceramente non ho ancora capito come perch猫 ho fatto tante prove.

Appena ne vengo a capo lo pubblico, cos矛 se qualcuno ne ha bisogno potr脿 trovarlo qui.

Grazie ancora, Andrea.

Andrea Errigo
info@andreaerrigo.it
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Posts: 24
Joined: Wed Oct 18, 2006 09:50 AM
Re: Compilazione Librerie
Posted: Wed Nov 22, 2006 07:42 AM
EnricoMaria wrote:Benissimo!

EMG

Allora da quello che ho capito, rivedendo i file di compilazione/link sembra che se non indichi l'unit脿 disco nel file ListLibs.rsp non viene caricato il .RES.

St貌 ancora indagando, ma la cosa mi sembra alquanto strana.

Andrea.
Andrea Errigo
info@andreaerrigo.it