Problemi di gerarchia DLL

5

Voglio premettere questo dicendo "Adoro il mio lavoro e voglio restare qui"

Ma ho un problema serio,

  1. DLL collegate in modo circolare (le DLL sono collegate all'EXE)
  2. Le build speciali con condizionale definiscono di sbarazzarsi dei collegamenti quando l'EXE non esiste per l'utilizzo delle DLL in utility speciali.
  3. Impossibilità di fare riferimento alle nostre DLL come funzioni esterne perché generano errori quando sono collegate (è necessario utilizzare invece le funzioni di LoadLibrary di Windows)

Quindi ... La mia domanda è, fare riferimento all'eseguibile sembra una cattiva idea, ma un male necessario per ottenere informazioni sulla sessione (questa è un'applicazione client / server con più utenti). Il modo migliore per fare riferimento all'eseguibile in esso è chiamato DLL è inizializzare le DLL chiamate dall'eseguibile con tutte le informazioni di cui potrebbe mai aver bisogno per svolgere il proprio lavoro?

    
posta Peter Turner 03.02.2011 - 17:18
fonte

1 risposta

4

Se hai bisogno di questi dati, dovrebbe essere

a) passato nelle DLL (come suggerito), o

b) memorizzato in una dll "globale" da cui puoi fare riferimento ad altre DLL.

Dato che stai parlando di informazioni sulla sessione, mi piacerebbe andare con quest'ultimo in modo che tu debba rimanere aggiornato solo in una posizione. Se lo hai passato in ogni dll quando è stato inizializzato, non sarebbe stato aggiornato e non avresti modo di saperlo.

    
risposta data 03.02.2011 - 17:36
fonte

Leggi altre domande sui tag