Форум программистов, компьютерный форум, киберфорум
mkostoevr
Войти
Регистрация
Восстановить пароль
Рейтинг: 3.75. Голосов: 8.

Ошибка типа "Не удается найти dll библиотеку компилятора ресурсов"? Есть решение!

Запись от mkostoevr размещена 06.06.2017 в 19:59
Обновил(-а) mkostoevr 08.06.2017 в 12:17

Доброго времени суток!

Итак, сегодня, когда хотел открыть .RC файл (файл с ресурсами) в Visual Studio 2017 я столкнулся с такой ошибкой: "Не удается найти dll библиотеку компилятора ресурсов" (или "Cannot find the resource compiler DLL.", по-интернациональному). Введя эту ошибку в кавычках я обнаружил, что в российском интернете такой фразы вообще не встречается (ну, либо она слишком глубоко зарыта), и решил по-быстрому выложить решение на русском языке.

Итак, как Вы, наверное, поняли, проблема в том, что Вася не может найти библиотеку по пути, указанном в реестре.

Есть 3 способа решить данную проблему:



1) (Это сделал я), просто найти на компе через поиск в проводнике два файла: rcdll.dll и rc.exe (они должны находиться в одной папке) и скопировать их в ту папку, в которой Студия эти файлы ищет.

В моём случае VS искал библиотеку в папке "C:\Program Files (x86)\Windows Kits\10\bin\x86", а лежали они в каталоге "C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x86"

АХТУНГ! Если Visual Studio ищет файлы в папке х86, копируйте туда нужные файлы ИМЕННО ИЗ х86, а в папку х64 ТОЛЬКО файлы из папки х64!!! Ну и, соответственно, в папку arm копировать только файлы из arm, а в arm64 - из arm64 (я не знаю, обязательно ли именно так, не проверял, но лучше не экспериментируйте).



2) Установить Windows 8.1 API: запустить Visual Studio Installer --> Нажать кнопку "Изменить" ("Modify") --> Развернуть список с установленными дополнениями С++ --> установить там галочку в пункте "Windows 8.1 SDK" --> Нажать "Применить" ("Modify"). Таким образом установиться Windows 8.1 SDK. Все записи в реестре должны отредактироваться автоматически.



3) Если этого не произошло, или Windows 8.1 SDK уже установлен, можно открыть редактор реестра и отредактировать ключи, указывающие Студии, где брать эти библиотеки. Ключи находятся в реестре по пути:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\*версия винды*

Кликаем по версии винды и видим несколько ключей. Нужно поменять значение ключа "InstallationFolder".

Меняем его на тот путь, в котором находятся папки "arm", "arm64", "x86" и "x64" с файлами "rcdll.dll" и "rc.exe" внутри. (нужно найти эти файлы через поиск в проводнике)

К примеру, у меня это: "C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\"

Если в ветке "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows" несколько веток с версией винды, меняете ключ "InstallationFolder" в той, чьё название имела папка, на отсутствие файлов в которой Студия жаловалась. К примеру, моя студия искала файлы в "C:\Program Files (x86)\Windows Kits\10\", и поменял я значение ключа "InstallationFolder" в ветке "v10.0".


Надеюсь, я кому нибудь помог, удачного дня!
Размещено в Без категории
Показов 2615 Комментарии 0
Всего комментариев 0
Комментарии
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.