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

    [C] Creare una dll e renderla disponibile

    Salve, premetto che non sono assolutamente esperto di quanto sto per dire, perciò non arrabbiatevi e abbiate pazienza! Il mio problema è il seguente:

    - Devo realizzare una funzione in C, molto semplice, e successivamente compilarla per ottenere un file .dll. A questo punto devo rendere questo file, che di fatto è una libreria, disponibile ad un'altra applicazione (per la cronaca trattasi di PostgreSQL, un ORDBMS).

    - Siccome solitamente non sviluppo in C mi sono scaricato questo ambiente di sviluppo: "devcpp-4.9.9.2_setup.exe", va bene per i miei scopi?

    - Sperando che la risposta sia affermativa chiedo inoltre: una volta prodotto il file .dll devo prendere altri accorgimenti per rendere in generale fruibile questo file? In altre parole, lasciando stare come poi farà PostgreSQL a utilizzare la libreria, in generale c'è qualche altra cosa da fare affinchè il file .dll espleti la sua funzione?

    - Il sistema operativa sul quale lavoro è Win XP Professional.

    Ciao Fabio
    Il mondo è diviso in 10 gruppi di persone... chi capisce il binario e chi no!

    http://www.pratesi.net

  2. #2
    mi sembra che sotto windows tu debba dichiarare le sunzioni da esportare come __export

    Codice PHP:

    #ifdef _WIN_
      #ifdef __BUILDING_THE_DLL
        #define __EXPORT_TYPE __export
      #else
        #define __EXPORT_TYPE __import
      #endif
    #else
      #define __EXPORT_TYPE
    #endif

    //---------------------------------------------------------------------------
    extern "C"
    {

    int __EXPORT_TYPEmia_funzioneda_esportare();


    ciao
    sergio

  3. #3
    __export è una parola riservata di Visual C++... con altri compilatori credo che tu debba usare un file .def...
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Ragazzi grazie ma ne sò quanto prima... ovviamente non per colpa vostra ma mia!

    Cerchiamo di ricapitolare:

    Con "devcpp-4.9.9.2_setup.exe" è possibile compilare un sorgente scritto in C ed ottenere un file .dll?

    Già sapere se ho installato l'ambiente giusto non sarebbe poca cosa!
    Il mondo è diviso in 10 gruppi di persone... chi capisce il binario e chi no!

    http://www.pratesi.net

  5. #5
    Sì, con dev-cpp (ma soprattutto con il suo compilatore) si possono creare dll, se non sbaglio puoi anche segnalare le funzioni esportate con declspec(dllexport).
    Amaro C++, il gusto pieno dell'undefined behavior.

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.