+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Estrarre il nome dell’immagine dentro una Dbimage

  1. #1
    caviccun non è in linea Scolaretto
    Luogo
    GENOVA
    Post
    104

    Estrarre il nome dell’immagine dentro una Dbimage

    Ho creato un DB in cui la tabella ha un campo Blob.Nel campo Blob va salvata una immagine .jpg.Quando clicco sul nome utente in una DBgrid, la DBimage mi visualizza l’immagine salvata nel campo Blob del record dell’utente selezionato nella DBgrid.
    Avrei l’esigenza di estrarre il nome dell’immagine dentro la DBimage.
    La DBimage si chiama – Dati_imma. Posto uno stralcio del codice che però non funziona.Chiedo un aiuto, grazie.
    NB. (Mi scuso se sono poco chiaro e ho fatto qualche errore grammaticale.Colpa della mia vista.
    Chiarisco che, ho postato lo stesso argomento su un'altro forum dove però ho invitato l'amministratore di eliminare il mio topic)

    codice:
    var
    Jpg: TJpegImage;
     Stream: TMemoryStream;
     nima:string;
    begin
       Jpg := TJpegImage.Create;
       vStream := TMemoryStream.Create;
       Stream.Position := 0;
       Jpg.SaveToStream(Stream);
       jpg.Assign(Dati_imma.Picture);
      ecc.
    end;
    Ad una persona cattiva gli puoi versare sopra tutto il Rum che vuoi, non diventerà mai buona come un Babà

  2. #2
    L'avatar di _alka_
    _alka_ non è in linea Very Important Person
    Luogo
    Reggio Emilia
    Post
    1,133
    Quote Originariamente inviato da caviccun Visualizza il messaggio
    Ho creato un DB in cui la tabella ha un campo Blob.Nel campo Blob va salvata una immagine .jpg.Quando clicco sul nome utente in una DBgrid, la DBimage mi visualizza l’immagine salvata nel campo Blob del record dell’utente selezionato nella DBgrid.
    Avrei l’esigenza di estrarre il nome dell’immagine dentro la DBimage.
    Se per nome dell'immagine ti riferisci al nome originale del file da cui sono stati prelevati i dati dell'immagine salvandoli nel campo BLOB, questo non è possibile, in quanto il campo contiene solamente i dati binari dell'immagine ma non ha alcun riferimento a quello che è il file originale, anche perché i dati dell'immagine potrebbero provenire da qualsiasi fonte (o stream).

    Se l'esigenza è questa, credo che la soluzione più semplice e immediata sia quella di aggiungere un nuovo campo alla tabella in cui salvare il nome del file al momento dell'importazione, disponendo quindi di due campi: uno con il nome del file, l'altro con i dati.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Homepage | Blog | Delphi Podcast | Delphi Succinctly (e-book)

  3. #3
    caviccun non è in linea Scolaretto
    Luogo
    GENOVA
    Post
    104
    Immaginavo fosse come dici,ed avevo anche pensato ad un nuovo campo come mi consigli.Il fatto è che, per una questione di spazio (futuro) non vorrei avere nella cartella dell'eseguibile, sia l'immagine salvata nel DB, sia l'immagine prelevata e inserita nel campo Blob, nella stessa cartella (o un'altra).Volevo fare come col comando quì sotto(provato,funziona benissmo) dove carico l'mmagine (la stessa che è nel campo Blob, visualizzata nella DBimage) nel Paint.Tutto questo per stampare l'immagine soltanto quando desiderato, solo che ovviamente al posto del dato fisso 'mia_immagine.jpg' avevo bisogno di una stringa col nome prelevato dalla DBimage, però non posso farlo. Quindi cambierò strategia.Grazie della risposta.

    codice:
    WinExec (PAnsiChar (AnsiString ('mspaint.exe mia_immagine.jpg')), SW_SHOW);
    Ad una persona cattiva gli puoi versare sopra tutto il Rum che vuoi, non diventerà mai buona come un Babà

  4. #4
    L'avatar di _alka_
    _alka_ non è in linea Very Important Person
    Luogo
    Reggio Emilia
    Post
    1,133
    Quote Originariamente inviato da caviccun Visualizza il messaggio
    Il fatto è che, per una questione di spazio (futuro) non vorrei avere nella cartella dell'eseguibile, sia l'immagine salvata nel DB, sia l'immagine prelevata e inserita nel campo Blob, nella stessa cartella (o un'altra).Volevo fare come col comando quì sotto(provato,funziona benissmo) dove carico l'mmagine (la stessa che è nel campo Blob, visualizzata nella DBimage) nel Paint.Tutto questo per stampare l'immagine soltanto quando desiderato, solo che ovviamente al posto del dato fisso 'mia_immagine.jpg' avevo bisogno di una stringa col nome prelevato dalla DBimage, però non posso farlo. Quindi cambierò strategia.Grazie della risposta.
    Posso dire di non averci capito nulla?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Homepage | Blog | Delphi Podcast | Delphi Succinctly (e-book)

  5. #5
    caviccun non è in linea Scolaretto
    Luogo
    GENOVA
    Post
    104
    Capisco, so che non è facile spiegarsi e meno facile capire se uno non espone chiramente i problemi, comunque ti ringrazio ma avevo già rinunciato ad ottenere quello che volevo perchè ho capito che sarebbe una strada sbagliata.Per tua curiosità ti dico solo che, dall'immagine caricata nella DBimage, che vedo benissimo quando provo il programmma, volevo ricavarne il nome per poi fare qualcos'altro, ma ormai non ha importanza dato che come ti ho detto non va comunque bene quello che volevo ottenere.Volevo comunicare qesto al thread ma mi hai preceduto.Grazie ancora.
    Ad una persona cattiva gli puoi versare sopra tutto il Rum che vuoi, non diventerà mai buona come un Babà

+ Rispondi al Thread

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi