Newsgroup: it.comp.lang.visual-basic
Titolo: [HELP] Immagini in Campo OLE Access

Ciao,
    Sto facendo un programma in VB con db access, dentro il quale ci
dovranno essere delle immagini JPG. Non riesco, via codice, a far entrare
quelle cavolo d'immagini dentro il campo OLE.
A mano ci riesco, via codice no. Trovo l'indirizzo dell'immagine selezionato
ma poi?!
Qualche anima buona mi aiuta?!
Grazie, Mauro.

 
Lascia perdere l'OLE, ti vedrai gonfiare il db (non servirą a niente
compact database!) a Mega e Mega.
Le JPG vengono espanse e memorizzate come bmp, con tutte le conseguenze
del caso. Cerca di memorizzare a parte le immagini, archiviandone il
percorso.
Ricerca nel Newsgroup via 
deja.com
, si č parlato molto di questo. Guarda
anchce su it.comp.database.access
Ciao
Flavio Ronco
-- 
f.ronco@*NonMiServeNiente*
flashnet.it
http://www.metabrains.com
  [Under Construction]
-------------------------------------------------------------
"Che pubblico in gamba! Se ci dite dove lavorate,
domani mattina se abbiamo tempo vi veniamo a vedere"
[Paolo Rossi]

 anchce su it.comp.database.access
concordo absolutamente con flavio.
se serve, posso spedirti il thread, devo averlo archiviato. lemme know.
ciao, pal
--
andrea palazzi
xday at libero dot it
free sw - 
http://www.comune.modena.it/cittadini/apal/html/




 immagini ed inserendole in cartelle.
okOK, pero' con 10 immagini fotografiche aspettati un mdb di 10 mega, se
non di più.
Se il file jpg è 60kb, l'immagine dentro l'mdb può essere anche di un
Mega. Dipende dalla dimensione in pixel dell'immagine.
Comunque avrai fatto i tuoi conti e può darsi che stia insistendo a
vuoto. Sull'OLE non ti sono (rapidamente, almeno) d'aiuto, ma avrei
un'altra soluzione: inglobare le immagini come BLOBs (Binary Large
Objects). Ci sono esempi di come fare su alcuni VB.
Questa è la pagina di MSDN con del codice al riguardo:
http://support.microsoft.com/support/kb/articles/Q103/2/57.asp
Perdona l'insistenza. Sono un po' sensibile alla questione.



Newsgroups: it.comp.lang.visual-basic
Subject: Re: AIUTO!..Come faccio a salvare immagini e testo in un file ?
Date: Tue, 14 Sep 1999 19:21:54 +0200
prova queste 2 funzioni. Usano ADO ma le puoi adattare facilmente al DAO.
Salvano e ripristinano immagini e generici files binari in database.
La prima funzione (Mdb2Bin) crea un file binario da un campo dbLongBinary
(mdb) o Image(SQL7) cosi' come salvato nel database. La seconda funzione
(Bin2Mdb) salva un file binario in un campo di database (dbLongBinary (mdb)
o Image (SQL7)).
Testate con Vb5+Ado2.1+Jet.3.51 o SQLServer 7
=======
Public Function Mdb2Bin(ByVal Campo As ADODB.Field, ByVal Percorso As
String) As Long
'From an mdb dbLongBinary field creates a binary file (path given in
"Percorso")
Dim s As String
Dim I As Long
Dim FileLibero As Integer
Dim Lunghezza As Long
Mdb2Bin = 1
FileLibero = FreeFile
On Error GoTo Errore
Open Percorso For Binary As #FileLibero
On Error GoTo 0
Lunghezza = Campo.ActualSize
s = Campo.GetChunk(Lunghezza)
Put #FileLibero, , Left$(s, Lunghezza)
Close #FileLibero
Mdb2Bin = 0
Errore:
End Function
=======
============
Public Function Bin2Mdb(ByVal Campo As ADODB.Field, ByVal Percorso As
String) As Long
'inserts an existing binary file whose path is specified in "Percorso" into
a database column
'IMPORTANT: The function Bin2MDB must be called from a statement like this:
'recordset.addnew (not necessary in ADO) ... ... recordset.update;
'modifications will influence the current record.
'Bin2MDB: return 0 if OK. else an error code
Dim S1 As String * 32767
Dim s As String
Dim I As Long
Dim FileLibero As Integer
Dim Lunghezza As Long
FileLibero = FreeFile
Bin2Mdb = 1 'file inesistente o inaccessibile
On Error GoTo Errore
If Dir(Percorso) = "" Then
GoTo Errore
End If
Open Percorso For Binary As #FileLibero Len = 32767
Lunghezza = FileLen(Percorso)
Bin2Mdb = 2 'errore di lettura dal file
I = 1
While (I * 32767) < Lunghezza
Get #FileLibero, , S1$
s$ = s$ & S1$
I = I + 1
Wend
Get #FileLibero, , S1$
s$ = s$ & Left$(S1$, Lunghezza - ((I - 1) * 32767))
Close #FileLibero
Bin2Mdb = 3 'errore di appendchunk
'Campo = Null
Campo.AppendChunk s$
Bin2Mdb = 0 'tutto OK
Errore:
End Function

Ciao Ragazzi!
    Grazie per il vostro aiuto!
Purtroppo, però, ho dovuto rinunciare, per adesso, all'OLE perché non stato
in grado di risolvere questi problemi:
- Estrazione delle immagini dal db (che comunque ho visto che mi avete
postato, grazie)
- Conversione da BMP a JPG! <--- questa è stata veramente una batosta! Come
mi avevate detto salva in BMP dentro l'OLE ed io non lo sapevo.
Così penso di adottare, ho già fatto il programma ed aspetto che dal server
mi diano il via per l'utilizzo della DLL, questo sistema:
Nel db metto tutte le informazioni di scheda dell'immagine, memorizzo i path
delle foto (sia icona che grande) e poi invio tutto al server.
Una volta al server le pagine asp gestiranno il tutto. Creeranno una pagina
per fare l'uplading delle immagini, il numero di record ed il path li
prenderò dal db, e mi pronderò le foto dal client. Fatto questo migro i dati
nel db originale, copio le foto nelle rispettive cartelle originali e le
rinomino con i nomi appropriati!
Se vi viene in mente un sistema più simpatico...
sono qui!
Magari date un'occhiata al sito, 
www.mondomarino.net
, così vi rendete conto!
Grazie, Mauro