Newsgroup: it.comp.lang.visual-basic
Titolo: Inserire un collegamento a file in una campo OLE di Access, con le librerie ADO

Utilizzo le librerie ADO v2.6 per gestire un database di Access 2000.
In questo database devo riempire una tabella che ha un campo di tipo OLE.
In questo campo dal codice devo inserire il collegamento OLE da un file già
esistente (un'immagine).
Nel form di visual basic ho un contenitore OLE dove con una riga:
    OLE1.CreateLink Dir_Immagini & "\" & rsImmagine!nomeFile
creo un collegamento con un'immagine sul disco.
In fase di scrittura del recordset ho provato con:
    rsImmagine!CampoOLE = OLE1.LpOleObject
ma non va un tappo!
Qualcuno porta con sè la risposta a questo dilemma?
Volracef

 ha scritto

www.comune.modena.it/cittadini/apal/tmp/img_db.zip
c'e' un test di immagini e oggetti ole, con un paio di picbox.
(access97).
pero' -- se l'immagine gia' sta fuori del db, perche' ti incasini con l'ole
? metti un campo string con il percorso, poi se devi visualizzarla usa
loadpicture().

 ha scritto nel messaggio
news:95e4ba$gelbl$4...@ID-51318.news.dfncis.de...


 Non sai come si potrebbe fare in questo caso?
purtroppo non ti so aiutare. mai usato cr, e sono restio a aggiungere una
vagonata di roba esterna a programmi quando gia' so che dovro' scontrarmi
con mdac e compagnia cantante.
la routine qui sotto comunque la eseguo per mostrare delle immagini. sono
tiff da 8 mb, girati in jpeg da 640-800k. viene chiamata a ogni reposition,
e su un 366 inchioda giusto un attimo la macchina. il controllo e' gvbox,
che da' parecchie informazioni e generi di conforto. num2string e' una fx
che da 1 tira fuori 00000001, ecc., cosi' nel db il fotografo inserisce solo
il numero vero e non si incasina. il dbname puo' variare x' i test li faccio
in locale, ma sul portatile tengo il minimo: con 4800 jpeg sto gia'
impallando il server ed e' previsto di crescere un bel po'.
non so se con cr puoi usare qc tipo loadpicture, che qui sotto ti segno dove
andrebbe.
spero ti sia di un qualche aiuto.
ciao, a.
Private Sub ShowImage()
    On Error GoTo errman
    If IsNull(dbImg.Recordset!numfot) Then Exit Sub
    Dim time1: time1 = Timer
    With dbImg.Recordset
        If !numfot > 0 Then
            If MainDbName = "img.mdb" Then
                imgName = MainPath & "jpeg\" & Num2String(!numfot) & ".jpg"
            Else
                imgName = "\\server\img\jpeg\" & Num2String(!numfot) &
".jpg"
            End If
            GVB.Zoom = hscZoom.Value / 100
            GVB.filename = imgName
' con un picbox sarebbe picImg=loadpicture(imgname)
        End If
    End With
    Dim FileWid As Long, FileHei As Long, FileCol As Long
    Dim ImagSiz As Long
    With frmMain.Status
        'If MyFile = "" Then Exit Sub
        FileWid = GVB.bmpw
        FileHei = GVB.bmph
        FileCol = 2 ^ GVB.bmpc
        ImagSiz = (FileWid * FileHei * GVB.bmpc) / 8
        .Panels(4) = LCase(imgName)
        .Panels(5) = FileWid
        .Panels(6) = FileHei
        .Panels(7) = Format(FileCol, "###,###,###,###")
        .Panels(8) = Format(ImagSiz, "###,###,###,###")
        .Panels(9) = Format(FileLen(imgName), "###,###,###,###")
        .Panels(10) = FileDateTime(imgName)
        .Panels(11) = hscZoom.Value & "%"
        .Panels(3) = Format(Timer - time1, "###.###") & " sec."
    End With
    Exit Sub
errman:
    frmMain.Status.Panels(4) = imgName & ": Immagine non disponibile"
    Dim j
    For j = 5 To 11
        frmMain.Status.Panels(j) = ""
    Next
    Exit Sub
End Sub