Ho bisogno di qualcosa che possa generare un PDB da un file DLL (codice C# .NET), esiste un programma gratuito per farlo?Genera PDB da file DLL .NET?
risposta
È necessario il codice sorgente per generare un PDB.
In altre parole: non è possibile creare un PDB quando tutto ciò che si ha è la DLL. –
sì, è così. –
Bene, posso usare Reflector per ottenere l'origine, quindi cosa mi serve per ottenere il PDB? – BrunoLM
Il PDB contiene ulteriori informazioni sulla libreria e può essere generato solo allo stesso tempo che dll viene generato dal codice sorgente.
Per consentire la generazione di file PDB Vai al progetto Proprietà, scheda, ... pulsante Avanzate costruire e selezionare nel campo Debug info "PDB-only" o "pieno":
Aggiornamento:dotPeek a partire dalla versione 1.2 è in grado di generate PDB from DLL.
Anche Non ci sono fonti e codice offuscato, è possibile creare PPB di ricompilazione con ildasm e ilasm:
- assemblaggio decompilare da ildasm: ildasm /out=assembly_name.il assembly_name.dll
- complile con ilasm: ilasm assembly_name.il/dll/PDB
In realtà si può fare anche con dotPeek dalla versione 1.2 in poi.
Fare clic con il pulsante destro del mouse su Assembly Explorer e selezionare "Genera Pdb". Ha anche la possibilità di generare file per gli assembly di riferimento tutti in una volta.
Funziona solo se l'assieme contiene una directory di debug – user1069816
In teoria si potrebbe fare, dal momento che con una dll .net è possibile ottenere il codice sorgente originale (entro l'errore sperimentale). L'unico pezzo mancante è il formato del file 'PDB', che è un segreto strettamente sorvegliato. Reflector può prendere una DLL e trasformarla in una soluzione, in cui è possibile utilizzare Visual Studio per compilarlo * e generare contemporaneamente il PDB *. Stai usando Visual Studio per generare un PDB per te, dal momento che conosce il formato segreto. –