Come compilare una cartella dati in un .exe, se il .exe richiede i dati nella cartella dati per funzionare
Stai facendo questa domanda come se fosse semplicemente un dettaglio di implementazione per convertire i dati che sono attualmente memorizzati come uno o più file in una cartella in una parte dell'exe.
Ma stai davvero cambiando l'architettura di un pezzo di software, e hai bisogno di sapere qualcosa sul perché è stato originariamente fatto con file dati separati, poi guarda i vantaggi e gli svantaggi di fare qualcosa di diverso. Potrebbe essere che combinare tutti i file in un unico grande .exe sia davvero una cattiva idea.
Cose che dovreste capire sull'implementazione esistente:
- Quanto sono grandi i file di dati, rispetto al codice eseguibile?
- L'eseguibile carica tutti i dati dai file in memoria all'avvio, o i dati sono accessibili periodicamente mentre l'eseguibile viene eseguito?
- Ogni esecuzione del programma usa tutti i dati nei file? O legge solo una piccola frazione dei dati, a seconda di ciò che c'è nel suo input?
- I dati nei file sono una semplice tabella o array di strutture che vengono lette in memoria senza molta manipolazione? O il processo di lettura dei dati costruisce una struttura complessa in memoria?
Ci sono diversi modi possibili per includere i dati nel programma eseguibile, se la quantità di dati è di dimensioni pratiche. Le tabelle fisse possono essere costruite direttamente come strutture inizializzate in molti linguaggi di programmazione. Oppure, se un'ampia elaborazione avviene tra i file e la forma interna dei dati, si può scrivere un "preprocessore" exe che legge tutti i file, costruisce le tabelle interne dei dati, e poi scrive tutte queste tabelle in un singolo file binario che l'exe può caricare rapidamente e senza quasi alcun overhead. (Ma attenzione: questo può facilmente produrre un file intermedio che non è portabile su più architetture di computer perché le dimensioni dei dati e l'imballaggio variano). O se i file rappresentano valori precompilati di una funzione, forse si può riorganizzare il codice per calcolare una tabella di valori nel .exe all'avvio, evitando di leggere i file esterni. Oppure potete calcolare la funzione ogni volta che un risultato è necessario, piuttosto che usare una tabella.
Se non sapete cosa significano i dati, e come e quando vengono usati, non potete fare buone scelte su come cambiare l'architettura - e nemmeno chiunque altro su Quora, perché non lo sappiamo neanche noi.
Articoli simili
- Come bypassare la password della cartella sicura del Samsung A20 senza perdere alcun contenuto che si trova nella cartella sicura
- Come usare CMD per aprire una cartella e usare un .exe sui file all'interno
- Quale browser è meglio per compilare moduli online, IBPS, o altri moduli su un telefono Android?
- Come compilare ed eseguire codice C/C++ in Visual Studio Code