12/01/12 16:44
diegotrex
Ciao,chiedo per favore aiuto
domanda specifica che probabilmente avrà risposta di validità generale
io invece dovrei usare la DLL FTD2XX.dll contenente funzioni il cui
prototipo è in FTD2XX.h.Vengono fornite da una casa costruttrice di circuiti integrati.
in FTD2XX.h sono dichiarate FT_Open e FT_ListDevices ,implementate
effettivamente entrambe nella DLL(verificato con una utility PE explorer)
se nel codice del mio programmino sviluppato col vecchio C++Builder
3.0(...)
chiamo la funzione FT_Open e lancio il build tutto OK
se chiamo FT_ListDevices ho 1 errore:
[LinkerError] Unresolved external 'FT_ListDevices' referenced from
D:\.....
non capisco perchè una si e una no...
NB!!ancora (per me)più strano
se elimino la DLL in questione da /system32 e da ogni altra cartella
inerente al progetto a build-time ho gli stessi risultati!
FT_Open che non dovrebbe essere definita in nessuna DLL accessibile se
chiamata non dà problemi(a build-time)
Come mi aspetto a run time ho errore "DLL non trovata"
Ma come???a build time non serve che vi sia in giro la DLL contenente le
funzioni chiamate per ora solo nel codice del .cpp??????
Allora rinomino FT_Open FT_pippo sia nel .h che nel cpp supponendo che il
nome FT_Open esista solo in questi due files,aspettandomi che la coerenza
dei nomi mi dia un build senza errori ,e invece no:
[LinkerError] Unresolved external 'FT_pippo'
DOMANDAov'è che il linker va a cercare l'esistenza di queste funzioni se
non ho più la DLL?
Grazie
domanda specifica che probabilmente avrà risposta di validità generale
io invece dovrei usare la DLL FTD2XX.dll contenente funzioni il cui
prototipo è in FTD2XX.h.Vengono fornite da una casa costruttrice di circuiti integrati.
in FTD2XX.h sono dichiarate FT_Open e FT_ListDevices ,implementate
effettivamente entrambe nella DLL(verificato con una utility PE explorer)
se nel codice del mio programmino sviluppato col vecchio C++Builder
3.0(...)
chiamo la funzione FT_Open e lancio il build tutto OK
se chiamo FT_ListDevices ho 1 errore:
[LinkerError] Unresolved external 'FT_ListDevices' referenced from
D:\.....
non capisco perchè una si e una no...
NB!!ancora (per me)più strano
se elimino la DLL in questione da /system32 e da ogni altra cartella
inerente al progetto a build-time ho gli stessi risultati!
FT_Open che non dovrebbe essere definita in nessuna DLL accessibile se
chiamata non dà problemi(a build-time)
Come mi aspetto a run time ho errore "DLL non trovata"
Ma come???a build time non serve che vi sia in giro la DLL contenente le
funzioni chiamate per ora solo nel codice del .cpp??????
Allora rinomino FT_Open FT_pippo sia nel .h che nel cpp supponendo che il
nome FT_Open esista solo in questi due files,aspettandomi che la coerenza
dei nomi mi dia un build senza errori ,e invece no:
[LinkerError] Unresolved external 'FT_pippo'
DOMANDAov'è che il linker va a cercare l'esistenza di queste funzioni se
non ho più la DLL?
Grazie
aaa