Forum > Progetti degli utenti

File2Unit: un modo per includere 1 o più file nell'exe e salvarli a runtime...

(1/2) > >>

Danycop:
Salve a tutti,
ho aperto il topic per condividere con la community un programmino che ho appena realizzato e penso possa essere di aiuto a molti di voi. il programa è solo un demo funzionante che mostra come creare una unit (Unit_store) che può contenere uno o più file da voi scelti ed espone un metodo da chiamare a RunTime per salvarli sul disco all'occorrenza.
Il programma può generare Unit sia per Lazarus/FPC che per Delphi e sia in chiaro che in modalità compressa per ridurre la grandezza della unit. Un pulsante apre la finestra di dialogo per scegliere i file da inglobare e l'altro mostra come si usa il metodo esposto dalla unit_store, per provare con le unit generate da voi ovviamente il progetto va ricompilato dopo aver incluso la unit_store generata da voi.
Naturalmente il programma può essere modificato per aggiungere nuove funzionalità (per esempio scegliere quali file salvare, adesso il programma li salva tutti oppure solo tramite il nome ma non consente la scelta a runtime).
Non Ho provato il programma in versione Linux o altri sistemi ma ritengo che possa funzionare tranquillamente senza problemi.
Buon divertimento a tutti

nomorelogic:
l'idea è buona
se non ho capito male si tratta di una gestione di risorse embedded nel sorgente pascal

un concorrente di windres...
quindi lo proverò sicuramente :)

Danycop:
Esattamente, come le risorse di windows ma con in più la possibilità della compressione zip in modo da non lasiare in chiaro i file e non occupare troppo spazio, inoltre dovrebbe poter funzionare in altri sistemi operativi come LINUX.
 :)

nomorelogic:

--- Citazione da: Danycop - Luglio 01, 2021, 02:03:42 pm ---inoltre dovrebbe poter funzionare in altri sistemi operativi come LINUX.
 :)

--- Termina citazione ---

perché ci sono altri sistemi operativi oltre linux?  ;D

Danycop:
... Dimenticavo di dire che:
ho usato questo metodo per includere la DLL di sqlite ed il relativo DB Vuoto nell'eseguibile,
evitando di distribuire 3 file enzichè uno solo: l'eseguibile.
All'avvio del programma controllo la presenza dei file su disco e, solo se non presenti, uso il metodo SaveToFile della unit
per crearli.

buon lavoro a tutti.

Navigazione

[0] Indice dei post

[#] Pagina successiva

Vai alla versione completa