Lista winnt@man.lodz.pl
[Lista archiwów] [Inne Listy]

Re: [WINNT] msvcrt.dll nie znaleziono punktu wejścia prcedury

To: winnt@man.lodz.pl
Subject: Re: [WINNT] msvcrt.dll nie znaleziono punktu wejścia prcedury
From: Robert Winkler <noone@nowhere.org>
Date: Thu, 12 Jun 2014 07:13:04 +0200
W dniu 2014-06-12 01:22, Grzegorz Niemirowski pisze:
Zwracam honor :) Masz rację odnośnie pliku systemowego. Swego czasu
Microsoft doszedł do wniosku, że programiści nie powinni korzystać z
msvcrt.dll, tylko z biblioteki odpowiedniej do wersji Visual Studio, np.
MSVCRT100.DLL dla Visual C++ 2010. Dlatego plik msvcrt.dll nie jest
dystrybuowany w pakiecie Visual C++ Redistributable i nie ma go jak
zaktualizować inaczej, jak kopiując z innej wersji Windows. Z drugiej
jednak strony niektórzy programiści linkują do niego, np. ci
korzystający z mingw. Dlatego są problemy na starych wersjach Windows,
jak np. XP 64.


Skopiować z innego systemy też nie można.
Wersja msvcrt.dll dystrybuowana z nowszymi systemami korzysta z
dodatkowych bibliotek, których nie ma w Windows XP x64.
Jedyny bezpieczny sposób na uaktualnienie tego pliku
to instalacja Service Packa,
tyle że Service Pack 2 dla Windows XP x64 zawiera bibliotekę msvcrt.dll
w której dalej brakuje _vswprintf.

Tak przy okazji.
Visual Studio 6.0 zawierał tool o nazwie Dependency Walker
pozwalający podejrzeć jakie funkcje są eksportowane przed
daną bibliotekę oraz z jakich bibliotek ona sama korzysta.
Obecnie Visual Studio nie zawiera już tego programu
ale można znaleźć jego niezależną wersje na sieci.

/Robert


<Pop. w Wątku] Aktualny Wątek [Nast. w Wątku>