Udostępnij za pośrednictwem


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>

Zobacz też