Risolto il problema con l'avvio del programma perché MSVCR100D.dll non è presente sul computer.

Ho dovuto reinstallare Windows 7 su un altro disco rigido sul mio computer dopo che il disco principale si è schiantato l'altro giorno. Ciò significava molte reinstallazioni di software e talvolta messaggi di errore quando un determinato runtime o programma non era installato sul sistema. Oggi ho provato a eseguire un programma che non è riuscito a farlo. Ha generato l'errore "Impossibile avviare il programma perché nel tuo computer non è presente MSVCR100D.dll. Prova a reinstallare per risolvere questo problema".

La reinstallazione ovviamente non ha risolto il problema. La cosa strana è che il programma di installazione del programma ha riconosciuto la mancanza delle librerie di runtime di Microsoft Visual C ++ 2010, ma l'installazione avviata per correggere il problema non ha corretto l'errore quando ho provato ad avviare il programma dopo l'installazione.

La prima cosa che ho fatto è stata verificare se il file msvcr100d.dll è stato effettivamente copiato in una cartella di sistema durante l'installazione del runtime. Alla fine, il file non si vedeva da nessuna parte, solo il file msvcr100.dll veniva copiato nella cartella system32 di Windows.

Dopo alcuni controlli ho scoperto che alla fine d indica la versione di debug. Ho quindi controllato il file del programma di installazione runtime estraendo il suo contenuto sul mio computer, solo per scoprire che msvcr100d.dll non era incluso nel file di installazione.

Non ne sono sicuro al 100%, ma sembra che lo sviluppatore dell'applicazione abbia commesso un errore facendo dipendere da esso il file di programma che richiede la DLL di debug. Se è corretto, è possibile che msvcr100d.dll sia distribuito solo con Visual Studio e non con le librerie di runtime.

Ho risolto il problema scaricando la dll da un repository dll di terze parti (assicurati di selezionare il download del file zip sulla pagina). Ho quindi estratto la dll direttamente nel programma direttamente, ed ecco, il programma ha funzionato in seguito.

In alternativa, puoi inserirlo nella cartella system32, ma personalmente lo preferisco nella cartella dell'applicazione per evitare problemi con altri programmi. È anche più semplice eliminare il file quando il software viene disinstallato.

Mi ha fatto pensare. Conosci un repository su Internet in cui puoi cercare i nomi dei file e come sono distribuiti?