Sto lavorando su una DLL e voglio che le funzioni che esporto vengano esportate solo da ordinale non per nome.Esportare le funzioni da dll solo ordinale
È possibile? Se sì, vorrei sapere come è fatto.
Sto lavorando su una DLL e voglio che le funzioni che esporto vengano esportate solo da ordinale non per nome.Esportare le funzioni da dll solo ordinale
È possibile? Se sì, vorrei sapere come è fatto.
L'unico modo per ottenere Delphi per contrassegnare una funzione per l'esportazione è utilizzare la direttiva exports
. E Delphi aggiungerà sempre una voce con nome alla tabella di esportazione PE per ogni funzione esportata. Ma è abbastanza facile dare alla funzione nessun nome.
library Project32;
procedure Foo;
begin
end;
exports
Foo index 1 name '';
begin
end.
che farà il trick.thanks – opc0de
Per quanto ne so, non si può fare di meglio con gli strumenti integrati. Immagino che potresti post-elaborare il file PE per rimuovere la tabella dei nomi esportati e lasciare gli ordinali. –
+1. Non avevo idea di poter usare la stringa vuota come il nome! –
È possibile utilizzare valori ordinali: http://101.lv/learn/delphi/ch19.htm. Ma il nome non è "nascosto", quindi temo che non si ottenga il * solo per * parte. Ma naturalmente potresti nominare le tue funzioni 'Function001', ecc. –
Pensavo che l'esportazione ordinale fosse deprecato in finestre a 32 bit. –