Udostępnij za pośrednictwem


Opis zależności aplikacji Visual C++

Jeden sposób, aby ustalić, co Visual C++ bibliotek zależy od aplikacji jest spojrzenie na Karta Ogólne w Stron właściwości okno dialogowe dla projektu.Widoczny może być, na przykład, że projekt jest za pomocą biblioteki MFC i ATL.Jeśli została wybrana opcja MFC wykorzystania w bibliotece dynamiczne, w czasie wykonywania zależy od aplikacji MFC DLL, takich jak mfc100.dll.Jeśli aplikacja nie używa MFC i ATL, to może być nadal wykorzystuje bibliotekę CRT, jeśli użytkownik wybierze opcję Multi-Threaded DLL debugowania (/ MDd) dla Runtime Library na Generowanie kodu kartę w gałęzi C/C++ Właściwości konfiguracji.

Najbardziej przystępny sposób, aby określić, które biblioteki DLL, zależy od aplikacji jest otworzyć aplikację, za pomocą Walker zależności (depends.exe).Można pobrać Walker zależności od http://www.dependencywalker.com.

Za pomocą depends.exe lub narzędzia DUMPBIN z opcją /DEPENDENTS, można zobaczyć listę bibliotek DLL, które statycznie do aplikacji i listę bibliotek DLL ładowanych z opóźnieniem w aplikacji.

Aby zobaczyć, które biblioteki DLL, takich jak formanty ActiveX są obciążone dynamicznie, użyj profilowania cechą depends.exe.Następnie należy przetestować aplikację, dopóki nie upewnisz się, że wszystkie ścieżki kodu zostało wykonane.Podczas kończenia sesji profilowania depends.exe pokazuje, które biblioteki DLL dynamicznie zostały załadowane.

Podczas korzystania z depends.exe, należy pamiętać, że biblioteka DLL może mieć zależność na inna biblioteka DLL lub w określonej wersji biblioteki DLL.Można użyć depends.exe, na komputerze deweloperskim lub na komputerze docelowym.Na komputerze deweloperskim depends.exe raporty biblioteki DLL, które są wymagane do obsługi aplikacji.Jeśli masz problemy z uzyskaniem aplikacji do uruchamiania na komputerze docelowym, można skopiować depends.exe do komputera docelowego i otworzyć aplikację w depends.exe.Depends.exe sprawozdań, które aplikacji bibliotek DLL brakujące lub obecnych z niepoprawnej wersji.

Po umieszczeniu pełną listę bibliotek DLL, zależy od aplikacji, można określić, która z tych bibliotek DLL trzeba rozpowszechniać z aplikacją, wdrażając do innego komputera.W większości przypadków nie trzeba redystrybuować systemowej biblioteki DLL, ale może być konieczne redystrybuować bibliotek DLL dla Visual C++ bibliotek.Aby uzyskać więcej informacji, zobacz Określenia, które biblioteki DLL do Redistribute.

Zobacz też

Inne zasoby

Wdrażanie aplikacji biurowych (Visual C++)