dllMainReturnsFalse MDA
Uwaga
Ten artykuł jest specyficzny dla programu .NET Framework. Nie ma zastosowania do nowszych implementacji platformy .NET, w tym .NET 6 i nowszych wersji.
Asystent dllMainReturnsFalse
zarządzanego debugowania (MDA) jest aktywowany, jeśli zarządzana DllMain
funkcja zestawu użytkownika wywoływana z przyczyną DLL_PROCESS_ATTACH zwraca wartość FALSE.
Objawy
Funkcja DllMain
zwróciła wartość FALSE wskazującą, że nie została prawidłowo wykonana. Może to spowodować nieokreślone problemy, ponieważ DllMain
funkcje zwykle zawierają ważny kod inicjowania.
Przyczyna
Funkcja jest wywoływana DllMain
z przyczyną DLL_PROCESS_ATTACH inicjowania bibliotek DLL podczas ładowania. Jeśli zwraca wartość FALSE, oznacza to, że inicjowanie biblioteki DLL nie powiodło się.
Rozwiązanie
Przeanalizuj kod funkcji biblioteki DLL, która DllMain
zakończyła się niepowodzeniem i zidentyfikuj przyczynę niepowodzenia inicjowania.
Wpływ na środowisko uruchomieniowe
Ta usługa MDA nie ma wpływu na CLR. Raportuje tylko dane dotyczące wartości zwracanej dla elementu DllMain
.
Wyjście
Komunikat wskazujący, że funkcja wywoływana DllMain
z powodu DLL_PROCESS_ATTACH zwróciła wartość FALSE. Należy pamiętać, że ta usługa MDA jest aktywowana tylko wtedy, gdy DllMain
jest zaimplementowana w kodzie zarządzanym.
Konfigurowanie
<mdaConfig>
<assistants>
<dllMainReturnsFalse />
</assistants>
</mdaConfig>