﻿# Что использовать вместо rundll32\.exe для запуска 64\-битных DLL

В 64\-битных версиях ОС семейства Windows присутствуют 2 варианта программы rundll32\.exe: 64\-битная версия: %WinDir%\\System32\\rundll32\.exe и 32\-битная версия: %WinDir% \\SysWOW64\\rundll32\.exe\.

64\-битное приложение может использовать 64\-битную версию rundll32\.exe находящуюся в %WinDir% \\System32\\ для загрузки 64\-битных DLL\. Однако 32\-битные программы, обращающиеся к %WinDir%\\System32\\, в целях обеспечения совместимости перенаправляются в %WinDir% \\SysWOW64\\ и будут таким образом использовать 32\-битную версию rundll32\.exe\. 

При наличии необходимости в обращении к директории %WinDir%\\System32 из 32\-битной программы запущенной в 64\-битной Windows, можно воспользоваться виртуальной директорией %windir%\\Sysnative для которой не осуществляется перенаправление либо использовать функцию [Wow64DisableWow64FsRedirection](https://msdn.microsoft.com/en-us/library/aa365743(v=vs.85).aspx) для отключения системы перенаправления\.

## Библиографический список

1. Обсуждение на сайте stackoverflow\.com\. [rundll32\.exe equivalent for 64\-bit DLLs](https://stackoverflow.com/questions/4703635/rundll32-exe-equivalent-for-64-bit-dlls)\.
1. MSDN Library\. [File System Redirector](https://msdn.microsoft.com/en-us/library/aa384187(v=vs.85).aspx)\.