Che cos'è il formato di file APS?
Un file .aps è una cache intermedia binaria generata automaticamente dall'editor di risorse di Visual Studio quando uno sviluppatore apre o modifica uno script di risorse .RC in un progetto Windows C++. Memorizza un'istantanea binaria compilata delle risorse Windows del progetto - finestre di dialogo, menu, icone, tabelle di stringhe, tasti di scelta rapida e informazioni sulla versione - consentendo all'IDE di caricare rapidamente l'editor di risorse senza dover analizzare nuovamente il sorgente testuale ogni volta.
Il formato .aps è una serializzazione binaria piatta in ordine di byte little-endian, proprietaria della toolchain MSVC. Contiene gli stessi dati di risorsa del file .rc ma privi di commenti e riferimenti a nomi simbolici, che sono conservati separatamente in resource.h. Il file .aps viene rigenerato automaticamente da .rc ogni volta che viene aperto l'editor di risorse, rendendolo un vero e proprio artefatto derivato senza alcun ruolo nelle build da riga di comando o CI.
Gli sviluppatori dovrebbero escludere i file .aps dal controllo di versione elencandoli nel file .gitignore; solo i file .rc e .res devono essere tracciati. Eliminare un file .aps è sempre sicuro: Visual Studio lo ricrea alla successiva sessione dell'editor di risorse.
La pipeline standard è: sorgente .rc → Compilatore di risorse (rc.exe) → oggetto risorsa binaria .res → il linker lo incorpora nel file .exe o .dll. Il file .aps è un effetto collaterale dell'IDE e non ha alcun ruolo in questa catena.
Sicurezza e incolumità
RISCHIO: LOWI file APS contengono dati di risorse Windows compilati (finestre di dialogo, stringhe, icone) e nessun codice eseguibile. Sono sicuri da eliminare. L'unico rischio è se un file .aps proveniente da un progetto non attendibile contenesse una risorsa incorporata malformata, che teoricamente potrebbe innescare un bug nel compilatore/editor di risorse, ma si tratta di un rischio trascurabile nel mondo reale.
Dettagli del formato
in sintesi- File di progetto AVR Studio - Atmel AVR Studio (ora Microchip Studio) utilizza .aps per i file di progetto dei microcontrollori; non correlato ai file di risorse di Visual C++.
- Impostazioni / Snapshot di Microsoft Access - Alcune versioni precedenti di Microsoft Access utilizzavano .aps per le impostazioni salvate della procedura guidata o degli snapshot.
Programmi che aprono file APS
Dettagli tecnici
specifiche approfondite| Ruolo nella pipeline di build | Solo cache dell'IDE; non consumato da `rc.exe`, dal linker o dalle build CI - puramente un artefatto dell'editor di risorse di Visual Studio |
| File sorgente | Compilato dallo script di risorse `.rc` del progetto tramite l'editor di risorse di Visual Studio |
| File di output | La risorsa collegata effettiva è il binario `.res` prodotto da `rc.exe` a partire da `.rc`; `.aps` non è l'output della compilazione |
| Ordine dei byte | Little-endian (Windows x86/x64) |
| Contenuto | Finestre di dialogo, menu, icone, bitmap, tabelle di stringhe, tasti di scelta rapida e info sulla versione codificati in binario |
| Non simbolico | I commenti e i riferimenti ai nomi simbolici da `.rc` vengono rimossi; i simboli sono memorizzati separatamente in `resource.h` |
| Rigenerazione | Ricreato automaticamente da `.rc` da Visual Studio; sicuro da eliminare in qualsiasi momento |
| Controllo di versione | Dovrebbe essere escluso tramite `.gitignore`; solo i file `.rc` e `.res` dovrebbero essere inviati |
| Compressione | Nessuna (struttura binaria piatta) |
| Firma parziale | Alcuni file `.aps` iniziano con `00 00 00 00 20 00 00 00 FF FF`; non è documentata alcuna firma costante universale |
| Piattaforma | Solo Windows (toolchain MSVC) |
| Codifica delle stringhe | Le stringhe di risorsa possono essere UTF-16 LE (risorse Unicode) o ANSI a seconda del tipo di risorsa |
| Rilasciato | mid-1990s (Visual C++ 2.x / early MSVC IDE era) |
| Specifica | learn.microsoft.com |
Conversioni APS
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file APS.