Есть ли способ сделать библиотеки DLL в какой-либо папке более приоритетными, чем папка приложения?


0

Определенное программное обеспечение, которое я использую, поставляется со сломанной DLL, что делает его случайным сбоем. Единственный способ исправить проблему - скачать правильную dll откуда-то вроде dll-files.com. Я уже сообщил об этом разработчику, однако проблема была закрыта со статусом «Не будет исправлено».

Я также устал от копирования правильных DLL каждый раз, когда мне нужно обновить это программное обеспечение. Поэтому я разработал другое решение: что, если бы я мог создать просто папку, которая имеет более высокий приоритет, чем папка приложения для поиска DLL (приложение поставляется с сломанной DLL рядом с EXE)? Однако я не знаю, как это сделать.

Моя версия ОС - Windows7 x64


Самое простое решение, удалить файл, Windows автоматически найдет следующую копию. Конечно, тот факт, что эта ошибка была назначена infaictes "не исправит", если не может быть реальной проблемой
— Ramhound

Ответы:


1

Как утверждает @Ramhound, удалите DLL, но сначала поместите действительную DLL в известное место , либо в системную папку, уже находящуюся в PATH, либо в новую папку, в этом случае добавьте местоположение в PATH. В зависимости от DLL, вам также может понадобиться зарегистрировать ее с помощью regsvr32 .

Каждый раз, когда приложение обновляется, оно будет вставлять плохую DLL в свою собственную папку, которую необходимо будет удалить. Кроме того, некоторые установщики можно открыть с помощью 7-Zip, PeaZip или другого инструмента, так что вы можете извлечь только нужные файлы и обойти установку избыточных ярлыков и т. Д.


За исключением того, что я устал от замены / удаления / чего-либо, чтобы это исправить. Я хочу 100% решение "огонь и забудь".
— Darkhog

Если вы используете установщик , то при каждом запуске он будет переустанавливать DLL и вносить изменения в реестр. Единственное решение состоит в том, чтобы вручную извлекать файлы при обновлении, и не все установщики удобны для пользователя.
— DrMoishe Pippik
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.