Newsgroup: it.comp.appl.access
Titolo: Visualizzare diverse immagini di grandi dimensioni nei report

Riprendo un post precedente per dire che l'ocx è stato completato ed è 
funzionante.
Riassumo il problema.
Con immagini di grandi dimensioni (tipicamente una bmp o jpg di almeno 2,5 
mb) i report di Access fanno fatica a visualizzarne più di tre alla volta.
Ho pensato di realizzare un ocx in VB6 che, sfuttando la picturebox di VB, 
mi permettesse di bypassare il problema.
Purtroppo così non è stato. Alessandro Baraldi mi ha suggerito di sfruttare 
le librerie GDI per mostrare solo un'immagine ridimensionata dell'originale. 
Detto fatto l'ottimo Alessandro, usando l'ocx già realizzato, gli ha 
aggiunto queste nuove feautures, completando così il lavoro fatto.
Ora l'ocx è perfettamente funzionante sia in A97 che in XP.
Indispensabile avere nel sistema sia le GDI32 che le GDIPlus. Con windows XP 
non ci sono problemi.
L'ocx, dopo averlo copiato in c:\Windows\System32, si registra al solito 
modo: regsvr32 PictureImage.ocx e va inserito nel corpo del report o dove si 
preferisce, anche in una maschera.
Al link sottostante è possibile scaricare l'ocx, il progetto completo per 
realizzarlo e i due mdb (A97 e XP) di esempio. Ricordo di cambiare il 
percorso delle immagini nella tabella, prima di aprire il report.
Qualora Roberto dovesse ritenere utile tale lavoro puo' tranquillamente 
inserirlo nel sitocomune...ovviamente anche Alex nel suo.
http://www.frantoiogestione.com/UsaImmaginiOCX.zip
Aspetto commenti.
Ciao, Carlo 

 ha scritto nel messaggio
news:epih08$p2p$1...@tdi.cu.mi.it...

Domani provo su un PC con WinXP, ma con Win2000 la cosa non stà in piedi...
almeno da me.
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.alessandrobaraldi.it
---------------------------------------------------------------------------

 @Alex (Alessandro Baraldi)
Ricorda di Unregistrare il precedente ocx prima di registrare il nuovo.
Ciao, Carlo 


Inutile dire che servono i runtime di vb6....
Le due librerie, gdi32.dll e gdiplus.dll, possono essere scaricate da qui 
(WindowsXPsp2):
http://www.dll-files.com/dllindex/dll-files.shtml?gdiplus
http://www.dll-files.com/dllindex/dll-files.shtml?gdi32
Fatta eccezione per W2003 si possono scaricare librerie e SDK da qui (in 
particolare W2000):
http://www.microsoft.com/downloads/details.aspx?FamilyID=6a63ab9c-df12-4d41-933c-be590feaa05a&DisplayLang=en
Un buon punto di partenza:
http://msdn2.microsoft.com/en-us/library/ms533798.aspx
o questo
http://msdn2.microsoft.com/en-us/library/ms536795.aspx
o questo
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/GDIPlus.asp
Ciao, Carlo 

 Ciao, Carlo
Come dicevo con VB6 funziona regolarmente....
Penso che il problema sia contingente al mix Access+Win2K, poichè l'errore
che mi viene restituito
è che non trova Gdiplus, cosa che ti assicuro c'è...... insieme
all'altra.... sorella...
Appena posso lo testo su WXp


 all'altra.... sorella...
Proverei a mettere e registrare gdiplus.dll in c:\WinNT\System32 (hai w2000, 
no?) perchè il client è GDI32.
Ciao, Carlo 


Senti cosa dice Microsoft alla pagina
http://msdn2.microsoft.com/en-us/library/ms533798.aspx
"Note  If you are redistributing GDI+ to a downlevel platform or a platform 
that does not ship with that version of GDI+ natively, install Gdiplus.dll 
in your application directory. This puts it in your address space, but you 
should use the linker's /BASE option to rebase the Gdiplus.dll to prevent 
address space conflict."
Cos'č sta /BASE option ?
Ciao, Carlo 

 Ciao, Carlo
E' proprio quì che casca il tutto...
GDI+ non è una DLL che si deve registrare in quanto non sono Activex,
oltretutto con WIN2K è
esplicitamente segnalato che deve essere messa nella cartella
dell'applicativo...
Da quanto ho capito potrebbe essere un paramero da passare al Compilatore
affinchè interpreti
correttamente i riferimenti..... ma non mi è mai capitato di vedere nulla di
questo tipo...
pare si possano realizzare anche con VB6 delle DLL standard, cosa che non
credevo possibile, usando delle procedure particolari durante la
compilazione...
BOH....
