Che cos'è il formato di file IDB?
I file .idb appartengono alla categoria dei file di build per sviluppatori, non ai file di script: sono generati dalla piattaforma di sviluppo Microsoft Visual Studio durante la compilazione C e C++.
I file .idb contengono informazioni sullo stato della build registrate dal compilatore MSVC cl.exe, mappando le dipendenze tra file sorgente, header e file oggetto .OBJ. Questi dati vengono utilizzati durante la compilazione incrementale: invece di ricompilare l'intero progetto, il compilatore legge il database .idb per determinare quali unità di traduzione sono cambiate e devono essere ricompilate. Inoltre, i file .idb memorizzano informazioni sullo stato del grafo delle dipendenze del compilatore, consentendo al sistema di build di saltare i moduli invariati e velocizzare significativamente lo sviluppo iterativo.
I file .idb sono un artefatto di build intermedio e non sono prodotti finali (deliverables). Possono essere eliminati in sicurezza dalla directory di output del progetto; il compilatore MSVC li rigenera automaticamente alla build successiva. Le informazioni finali sui simboli di debug sono memorizzate separatamente in un file .PDB. La funzione di rebuild minima (/Gm) che dipendeva maggiormente dai file .idb è stata deprecata a partire da Visual Studio 2019, con i set di strumenti più recenti che utilizzano i file .ipdb e .iobj per il collegamento incrementale.
Non confondere il file .idb di Visual Studio con il database del disassemblatore interattivo IDA Pro, che utilizza la stessa estensione per un formato proprietario completamente diverso.
Sicurezza e incolumità
RISCHIO: LOWUn file .idb di Visual Studio contiene dati di build inerti: non viene eseguito e non comporta rischi diretti. È sicuro da eliminare (il compilatore lo rigenera), non deve essere incluso nel controllo di versione e non deve essere distribuito con un programma. L'unico problema pratico è un file .idb obsoleto o corrotto che causa un errore di build incrementale, risolvibile con una ricompilazione pulita. Se il tuo .idb è in realtà un database IDA Pro, trattalo come qualsiasi file di progetto di analisi proveniente da una fonte affidabile.
Dettagli del formato
in sintesi- Database IDA Pro (Hex-Rays IDA) - Di gran lunga il file .idb più cercato: il database di disassemblaggio salvato da IDA Pro, contenente tutta l'analisi di un binario sottoposto a reverse engineering; si apre solo in IDA. (IDA 7+ lo comprime come un singolo file .i64/.idb.)
- InstallShield / altri file di dati app - Alcune applicazioni hanno utilizzato .idb per file di database interni; casi di nicchia e non correlati all'artefatto di build.
Programmi che aprono file IDB
Dettagli tecnici
specifiche approfondite| Tipo di file | Database proprietario binario dello stato della build |
| Sviluppatore | Microsoft Corporation (MSVC compiler toolchain) |
| Codifica | Binario, ordine dei byte little-endian |
| Scopo | Traccia le dipendenze dei file sorgente e degli header per consentire la compilazione incrementale C/C++ |
| Generato da | Compilatore MSVC (cl.exe) durante il processo di build, non a runtime o durante il debug |
| Dimensione tipica del file | Da decine di kilobyte a diversi megabyte, in scala con le dimensioni del progetto |
| Compatibilità di versione | Legato alla versione specifica del set di strumenti MSVC; non portabile tra le principali release di Visual C++ |
| Funzionalità associata | Rebuild minima (flag /Gm) e compilazione incrementale; /Gm deprecato in VS 2019 e successivi |
| Sistema operativo | Solo Windows |
| Sostituito da | File .ipdb e .iobj per il collegamento incrementale nei set di strumenti MSVC più recenti |
| Eliminabilità | Sicuro da eliminare dall'output di build; il compilatore rigenera il file alla build successiva |
| Formati correlati | .pdb (simboli di debug finali), .obj (oggetto compilato), .ilk (stato del collegamento incrementale) |
| Tipo MIME | application/octet-stream |
| Conflitto di nomi | Il disassemblatore interattivo IDA Pro utilizza anch'esso .idb per il suo database di progetto - un formato proprietario non correlato |
| Rilasciato | Visual C++ (Microsoft compiler toolchain; with the minimal-rebuild / incremental build features) |
| Ultima versione | Tracks the installed MSVC (cl.exe) version; not separately versioned |
Conversioni IDB
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file IDB.