Dependency Walker zgłasza brak IESHIMS.DLL i WER.DLL?

97

W systemie Windows XP Professional SP3 z programem Internet Explorer 8, kiedy uruchamiam Dependency Walker na moim pliku wykonywalnym, zgłasza, że: nie można znaleźć IESHIMS.DLL i WER.DLL.

  1. Czy potrzebuję tych bibliotek DLL?
  2. Gdzie mogę je zdobyć?

Uważam, że powinny znajdować się w C: \ Windows \ System32 \ Wer.dll i C: \ Program Files \ Internet Explorer \ Ieshims.dll

Użytkownik
źródło
1
Tylko pytanie: czy Twoja aplikacja działa bez tych bibliotek DLL? Mój nie, chociaż jest to tylko aplikacja wiersza poleceń systemu Linux skompilowana w systemie Windows z VS 2005.
Lena Schimmel
zdarzyło mi się to w systemie Windows 10.
don jasne

Odpowiedzi:

88

ieshims.dlljest artefaktem Vista / 7, gdzie podkładka DLL jest używana do proxy niektórych wywołań (takich jak CreateProcess) w celu obsługi IE w trybie chronionym, który nie istnieje w XP, więc jest niepotrzebny. wer.dlljest związany z raportowaniem błędów systemu Windows i prawdopodobnie nie jest używany w systemie Windows XP, który ma nieco inny system raportowania błędów niż Vista i nowsze.

Powiedziałbym, że żaden z nich nie powinien być obecny na XP i normalnie i tak byłby ładowany z opóźnieniem.

tyranid
źródło
4
Szkoda, że ​​nie możesz powiedzieć Dependency Walker, że IEFRAME.DLL tak naprawdę nie potrzebuje tych opóźnionych importów, więc przestałby rozwijać drzewo, aby je pokazać. (Straciłem rachubę, ile poziomów ostatnich ciekawej rzeczy są w drzewie dla LINK.EXE 9.00.30729.01 na moim systemie XP SP3 z IE8 - może to być aż 10!)
SAMB
Dzięki za twoją odpowiedź tyranid, przynajmniej wiem, że to fałszywy błąd. Mam ten sam problem co oryginalny plakat podczas uruchamiania Dependency Walker 2.1.3623 (z dnia 2002/04/16!) Na XP C: \ Windows \ System32 \ attribute .exe Używam również WinXP SP3 i IE8. Skąd Dependency Walker wie w ogóle o istnieniu plików Vista lub Windows 7?
8
Nie jestem przekonany, że to prawda, ponieważ znajduję zależności od IESHIMS.DLL w kodzie skompilowanym i połączonym od 2003 roku - i po prostu nie patrzyłem dalej wstecz. Bardziej prawdopodobne jest, że znajdują się one w pamięci podręcznej SxS w WinXP i przekazują dalej, a Depends po prostu nie radzi sobie z tym.
Bob77
Analizuję obie biblioteki DLL. Wywołania IESHIMS.DLL wydają się mylące, ale wer.dll jest zdecydowanie używany (przynajmniej w moim przypadku) z tymi wywołaniami (będzie działać tylko w systemie Vista lub nowszym) msdn.microsoft.com/en-us/library/windows/desktop/ …
notNullGothik
5

Niedawno miałem ten problem i rozwiązałem go, po prostu przenosząc IE8 z powrotem do IE7.

Domyślam się, że IE7 miał te pliki jako opakowanie do pracy w systemie Windows XP, ale IE8 prawdopodobnie działał z Vista / 7, więc usunął pliki, ponieważ późniejsze wersje po prostu nie używają podkładki.

Alex
źródło
0

1 · Czy potrzebuję tych bibliotek DLL?

To zależy, ponieważ Dependency Walker jest trochę nieaktualny i może zgłaszać niewłaściwą zależność.

  1. Gdzie mogę je zdobyć?

większość bibliotek dll można znaleźć pod adresem https://www.dll-files.com

Uważam, że powinny znajdować się w C: \ Windows \ System32 \ Wer.dll i C: \ Program Files \ Internet Explorer \ Ieshims.dll

U mnie leshims.dllmożna umieścić na C:\Windows\System32\. Kontekst: Windows 7 64bit.

ZhaoGang
źródło