Come si implementa un' architettura a plug-in in C?
Os Winzoz
Tnk
Come si implementa un' architettura a plug-in in C?
Os Winzoz
Tnk
La stupidità umana e l'universo sono infinite.
Della seconda non sono certo(Einstein)
Gnu/Linux User
dipende: solitamente una dll che fa da plugin
fa una richiesta di aggancio...
ovvero il programma padre cerca delle dll compatibili
con lui (nella stessa dir ecc) chiama un indirizzo
della dll (da nome o da ordinale) e quindi la fa agganciare...
Per ordinale indendi quello in neretto nel files .def???EXPORTS
Gida_Incrementa @1
Ma come faccio a cercare dll compatibili?
La stupidità umana e l'universo sono infinite.
Della seconda non sono certo(Einstein)
Gnu/Linux User
si è quello l'ordinale
x come cercare dipende da te
overo pui dire che tutti i tuoi plugin
abbiano estensione .pippo (sono semplici dll
rinominate) quindi fai una ricerca nella current-dir
o dove vuoi x questi files...
ogni volta che li trovi ti carichi la libreria
poi ti trovi il procAddress e lo richiami magari
mettendo un algoritmo di domanda-risposta x verificare
che il plugin sia tuo "realmente"...
Ma posso rinominare una lib con estensione .dll in altro modo??
L'algoritmo dovrebbe basarsi su nome-versione???
Per caricare uso LoadLibrary() e FreeLibrary()???
Per fare la riceca uso le API????
Tmk 1000000000000000000000000000000
La stupidità umana e l'universo sono infinite.
Della seconda non sono certo(Einstein)
Gnu/Linux User
certo che la puoi rinominare
si puo rinominare tutto
voleno puoi crearti un exe con nome "befana.txt"
poi lo passi al loader pe CHE non guarda l'estensione
ma l'header!!!
L'algoritmo dovrebbe basarsi su nome-versione
mmh si... ma tu puoi passargli sullo stack
o su un registro una chiave e lui , se ti riponde
in maniera appropriata, avra' il permesso di agganciarsi
altrimenti lo scarichi...
una specie di corrispondenza tipo serial valore1->risposta1
ovviamente NON statico ma in un algoritmo semplice e ridotto!
non ci sono esempietti in giro di questo tipo di architettura cosi imparo ad usarla?
La stupidità umana e l'universo sono infinite.
Della seconda non sono certo(Einstein)
Gnu/Linux User
nn ti so dire :-|
di solito non programmo in c :-|
tnk lo stesso!Originariamente inviato da $$$
nn ti so dire :-|
di solito non programmo in c :-|
Ma in cosa programmi???assembler?
La stupidità umana e l'universo sono infinite.
Della seconda non sono certo(Einstein)
Gnu/Linux User
Originariamente inviato da Luc@s
tnk lo stesso!
Ma in cosa programmi???assembler?
si.
ora che ci penso puoi prenderti
la sorgente di MIRANDA ....
implementa una struttura abb complessa
di plug-in
è in C.