|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Scoprire tutte le dipendenze di un eseguibile
Mi è capitato di compilare un programma C++ staticamente utilizzando le wxWidgets e le Winsocks, ma su qualche computer il programma non parte fornendo un messaggio che consiglia la reinstallazione dell'applicativo.
Ho provato a cercare con Dependancy Walker ma mi è sembrato di trovare solo librerie di sistema. C'è un modo per recuperare esattamente tutte le librerie che vengono linkate e creare un pacchetto di installazione? |
|
|
|
|
|
#2 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
veramente il dependency walker è già il massimo che ci sia per questo scopo: so che nelle sue ultime versioni oltre ad analizzare le dipendenze implicite fa anche un minimo di profiling nel tentativo di scoprire quelle esplicite (chiamate a LoadLibraryExW). se non hai una versione aggiornata scaricalo da www.dependencywalker.com.
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Mentre per le librerie mi segnala in rosso shlwapi.dll, che invece non compare nelle dipendenze nei computer in cui il tutto funziona. Che sia un problema di versione di questa libreria? Ma cambia qualcosa se compilo senza il manifest file? Sostanzialmente non ho ben capito a che serva il manifest, sembra solamente per avvisare in anticipo l'OS di quali librerie caricare. |
|
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Dec 2005
Città: Provincia di Vicenza
Messaggi: 174
|
Ciao,
il problema della mfc80 e` molto comune su WinXP. Prima di tutto nel computer in cui hai installato la tua applicazione hai installato il "vcredist" che installa le librerie per far girare le applicazione installate con VS2005? Io sviluppo con VS2005 ed ho trovato molti problemi anche dopo l'installazione del SP1, come dici tu il problema e` dovuto dal file Manifest che viene linkato. ciaooooo |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
L'altra applicazione utilizza le wxWidgets e il problema è il medesimo. L'opzione di compilazione è, in entrambi i casi MT perciò non dovrebbe avere dipendenze CRT, in effetti non appaiono dipendenze dirette con dependency walker (però pare che commctrl.dll richiami msvcrt.dll). Non ho installato il vcredist, farò anche questa prova, però il problema segnalato non è la mancanza di dll ma problemi con il manifest. |
|
|
|
|
|
|
#6 | ||
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
Quote:
|
||
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:24.



















