ClickOnce: ottenere DLL C ++ MSVCRT sul computer dell'utente
Domanda
Ho cercato disperatamente di ottenere la mia applicazione (15 DLL C # e 1 DLL C ++ / CLI con dipendenze DLL di runtime C ++) da distribuire con ClickOnce. Ho funzionato semplicemente copiando la cartella di rilascio , ma ClickOnce rifiuta di copiare i file (msvcm80.dll, msvcp80.dll e msvcr80.dll) e distribuirli in questa cartella.
Ho fatto questa soluzione alternativa (fornire msvcm80.dll, msvcp80.dll e msvcr80.dll come contenuto / copia Se più recente e quindi all'avvio, creare la cartella Microsoft.VC80.CRT, copiare quelle DLL e creare Microsoft.VC80 .CRT.manifest) che sembra funzionare, ma per me sembra tutto sbagliato.
Mi manca qualcosa?
Soluzione
Sono stupido: ho appena trovato questo:
Nella scheda Pubblica della pagina Proprietà del mio progetto di avvio: fai clic sul pulsante Prerequisiti ... > controlla le librerie di runtime di Visual C ++, impostazione del pulsante di opzione: scarica i prerequisiti dal sito Web del fornitore del componente.
Sembra funzionare come ci si potrebbe aspettare!
Altri suggerimenti
Dovrebbe esserci un MSI di Microsoft che distribuisce quelli per te. Ho usato ....
e scarica vcredist_x86.exe scaricare