Myślę, że w systemie Windows x64 nadal używa user32.dll i kilka innych 32-bitowych bibliotek. Dlaczego nie ma user64.dll?Dlaczego system Windows 64 nadal korzysta z user32.dll itp.?
Odpowiedz
C:\Windows\System32\user32.dll
to biblioteka 64-bitowa.
Wersja 32-bitowa w wersji C:\Windows\SysWOW64\user32.dll
.
Nie mogą zmienić żadnych nazw, ponieważ mogłoby to przerwać wszelkiego rodzaju programy z zakodowanymi ścieżkami.
Nazwy "user32" i "system32" itd. Istniały na długo przed nowoczesnymi 64-bitowymi wersjami systemu Windows. Nazwy miały na celu odróżnienie ich od wersji 16-bitowych, a nie od wersji 64-bitowych. W 64-bitowym systemie Windows nadal nie jest 16-bitowy, więc nadal jest "system32", "user32" i tak dalej.
Nikt tego nie zaplanował, to się po prostu stało.
Zmień nazwę pliku dll utworzy problemy łączenie/ładowanie bibliotek dll musi obsługiwać 32/64 z różnymi nazwami za każdym razem. System operacyjny po prostu przekierowuje foldery systemowe, gdy program działa w trybie 32-bitowym. – linquize
Zobacz http://en.wikipedia.org/wiki/Windows_api#Versions –
Jak na Ziemi jest to pytanie wyłączone? –
Duplikat: https://stackoverflow.com/questions/1540741 – CWilson