Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Problemi installazione/uso libreria FreeImage C++

    Cari amici,

    così come suggeritomi da MItaly, per regolare la luminosità di una foto in c++, ho scaricato la libreria eseguibile (non i sorgenti) FreeImage.

    Non riesco però, principalmente per la mia inesperienza, ad eseguire una qualsiasi delle funzioni di FreeImage in un programmino di prova ed ho dubbi sul fatto di non aver, tral'altro, "registrato" la DLL scaricata che ho invece solo copiato in C:\Windows\system32

    Dopo vari messaggi di errore in compilazione ho capito che dovevo, oltre a referenziare la libreria FreeImage.h, referenziare anche quella per il link FreeImage.Lib

    La compilazione va a buon fine ma in esecuzione il programma non carica la foto (prima funzione che volevo provare) ed ho il dubbio che non venga proprio richiamata la funzione! Non mostra infatti mai: "Caricata correttamente" ma, sempre: "Fine Programma".

    Il programmino d'esempio è il seguente:

    codice:
    #include "freeimage.h"
    #include <iostream>
    
    int main ()
    {
        FIBITMAP *bitmap = FreeImage_Load(FIF_BMP, "c:\sorgenti c++\miafoto.bmp",
                                                           BMP_DEFAULT);
    
        if (bitmap)
        { // bitmap successfully loaded!
            FreeImage_Unload(bitmap);
            std::cout << "Caricata correttamente!";
        }
        else 
        {
            std::cout << "Fine Programma";
        }
    
    return(0);
    }

    Non riesco ad immaginare se i problemi di esecuzione possano essere dovuti alla libreria eseguibile FreeImage erroneamente installata oppure errore/mancanza di dichiarazioni-codice nel mio programmino di prova;

    Vi ringrazio molto per un aiuto che vorrete darmi.

    Maurizio.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Intanto dovresti scrivere

    "c:\\sorgenti c++\\miafoto.bmp"
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3

    con \\ funziona!

    Originariamente inviato da oregon
    Intanto dovresti scrivere

    "c:\\sorgenti c++\\miafoto.bmp"
    Oregon!

    Ma sai che con i due slash \\ almeno l'esito della funzione è corretto!!! Grazie mille!!!

    Mi levate una curiosità? Ma basta SOLO copiare (come ho fatto io) la FreeImage.dll nella Windows\system2 per renderla operativa?

    Faccio altre prove e vedo se sono corretti i risultati delle funzioni FreeImage.

    Grazie e (forse)... a presto! :-)

    Maurizio

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462

    Re: con \\ funziona!

    Originariamente inviato da Maurix1969
    Ma sai che con i due slash \\ almeno l'esito della funzione è corretto!!!
    Ma dai ...

    E ti sei chiesto il perche' ?

    Mi levate una curiosità? Ma basta SOLO copiare (come ho fatto io) la FreeImage.dll nella Windows\system2 per renderla operativa?
    Beh ... sì ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Volendo puoi anche semplicemente metterla nella stessa cartella del tuo programma (questo può tornare utile se l'utente non ha i diritti per scrivere in %windir%\system32).
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6

    Mi avete fatto fare molti passi avanti :-)

    Grazie dei suggerimenti e delle correzioni! Anche gli ultimi mi sono serviti molto!

    Piano piano sto facendo tante prove e, con tanta fatica, sto iniziando a lavorare con le immagini tramite FreeImage.

    A presto ;-)

    Maurizio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.