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

    [Delphi] Dll e connessione database

    Ciao a tutti,
    ho un'applicazione e una DLL (entrambe scritte da me).

    Siccome vorrei utilizzare nella DLL la connessione ADO presente nel programma che la utilizza, è possibile fare questo?

    Se sì, come ?
    Stefano

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    Re: [Delphi] Dll e connessione database

    Originariamente inviato da peste1
    Siccome vorrei utilizzare nella DLL la connessione ADO presente nel programma che la utilizza, è possibile fare questo?
    E' possibile, passando alle funzioni della DLL il riferimento all'oggetto ADOConnection del tuo programma.

    Ad ogni modo, per via della natura delle librerie DLL, ci sono molti, troppi accorgimenti da prendere.

    Ad esempio, è necessario inserire la unit ShareMem nella clausola uses del file principale di progetto sia nell'applicazione che nella libreria affinché il passaggio di oggetti e stringhe da una parte all'altra funzioni; poi, occorre compilare applicazione e DLL facendo uso dei "runtime package" per evitare che ciascun modulo eseguibile includa codice macchina ottimizzato per due classi identiche, con lo stesso nome e prototipo Pascal ma differenti a livello binario proprio a causa delle ottimizzazioni compiute dal compilatore.

    La risposta alla modularità perfetta in Delphi è data dai package, che ti suggerisco di usare, inserendo al loro interno le classi di cui hai bisogno ed effettuandone il deploy assieme alla tua applicazione.

    Nella Guida in linea vengono affrontati molti degli argomenti che coinvolgono l'uso di package.

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

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.