Lnk1181 не удается открыть входной файл delayimp lib

Обновлено: 01.07.2024

Все программы в момент установки их в Windows прописывают в реестр свои ассоциации к файлам, с которыми они работают. Иногда при неграмотных действиях пользователя некоторые ассоциации могут изменится. Если добавить ассоциацию к ярлыкам, имеющим расширение .lnk, то программы с рабочего стола перестанут открываться. Разберемся почему так получается и как устранить.

Когда пользователь пытается открыть файл, который не имеет ассоциации, Windows предложит указать программу, с помощью которой можно это сделать. Но пользователь уверен, что ему по почте прислали именно документ в формате Word и пытается открыть файл программой Word.

В результате все файлы имеющие такое же расширение ассоциируются с этой программой.

Если в Windows появилась ассоциация ярлыков, то все ярлыки станут неработоспособными и программы с рабочего стола открываться не будут.

Восстановить ассоциацию файлов lnk можно через реестр путем удаления соответствующей записи.

Открываем окно "Выполнить" сочетанием клавиш "Win+R" и вводим команду "regedit"

В реестре переходим по ветке:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\

И удаляем раздел .lnk

После этого достаточно выйти из учетной записи пользователя и зайти обратно. Windows добавит в реестр правильный раздел .lnk и ярлыки будут нормально функционировать.

Изменить ассоциацию файла, неправильно сопоставленного какой-либо программе, можно без вмешательства в реестр.

Изменение ассоциации файла программе настраивается через элемент Панели управления "Программы по-умолчанию".

Для этого откроем панель управления "Пуск / Панель управления" и выберем элемент "Программы по умолчанию"

Выбираем пункт "Сопоставление типов файлов или протоколов конкретным программам"

Выбираем расширение файла, для которого необходимо изменить ассоциацию, и нажимаем кнопку "Изменить программу"

Указываем программу, при помощи которой необходимо открывать данный файл.

4 thoughts on “ Восстановление ассоциации файлов lnk и изменение ассоциаций файлов в Windows ”

Сколько мучался, наверно лет 6 с этой проблемой, но так как не особо мешала, не исправлял, а тут понадобилось и бац. Все помог способ с редактированием реестра. Спасибо за инструкцию

4ет у меня не полу4илось хоть удалил лнк! как и пишет комьютер и тд лнк ! по4ти на всех програмах так пишет и иконки не открываются и измененные

Может вирус подхватил. Попробуй просканировать антивирусом.

А если при попытке открыть реестр открывается как просмотр фотографий? То есть эта ерундовина затронула даже файл "regedit"?

Я уже некоторое время сталкиваюсь со странной ошибкой в Visual Studio 2010.

У меня есть решение, состоящее из проекта, который компилируется в статическую библиотеку, и другого проекта, который действительно прост, но зависит от этой библиотеки.

Иногда, в последние дни чрезвычайно часто, после перестройки решения или просто компиляции его с измененными исходными файлами 1-3, я получаю следующую ошибку:

Где компиляция thelibrary.lib прошла успешно без каких-либо ошибок или предупреждений.

Я пробовал очищать раствор, но это не всегда срабатывает.

При попытке установить определенный геофизический инструментарий Python я получаю эту ошибку: LINK: фатальная ошибка LNK1181: не удается открыть входной файл 'm.lib' Я считаю, что это связано с тем, что я использую buildtools MSVC. В их setup.py я нашел: setup(…, ext_modules=[ Extension(…, […].

В Компоновщик, общие, дополнительные каталоги библиотек, добавьте каталог в .dll или .libs вы включили в Компоновщик, ввод. Это не сработает, если вы поместите это в каталоги VC++, библиотечные каталоги.

Я вижу только 1 вещь, происходящую здесь: Вы не установили должным образом зависимости на thelibrary.lib в своем проекте, что означает, что thelibrary.lib построен в неправильном порядке (или в то же время, если у вас есть более 1 конфигурации сборки CPU, что также может объяснить случайность ошибки). (Вы можете изменить зависимости проекта в: меню - >проект->зависимости проекта )

Я пытался скомпилировать проект VC6 на работе, с VS2008 . Мне удалось успешно удалить все ошибки компиляции и предупреждения в моем унаследованном коде. Но на этапе связывания я столкнулся со странной проблемой . Проблема заключается в следующем : Первая проблема, с которой я столкнулся.

Хиии. Я использую opencv-2.4.11 с microsoft visual studio 12 express edition с поддельным ключом и windows 8.1. У меня нет проблем с компиляцией моего кода, но когда я строю свой проект, он показывает следующую ошибку LINK: фатальная ошибка LNK1181: не удается открыть входной файл.

В принципе, если у вас есть пробелы на пути .lib, это плохо. Не знаю, происходит ли это с вами, но кажется вполне возможным.

Исправление состоит в том, чтобы либо 1) поместить ссылку lib в "quotes", либо 2) добавить путь lib в каталоги вашей библиотеки (свойства конфигурации >> каталоги VC++).

У меня была одна и та же проблема и в VS 2010, и в VS 2012 годах. В моей системе была построена первая статическая библиотека, а затем она была немедленно удалена, когда начался основной проект.

Проблема заключается в общей промежуточной папке для нескольких проектов. Просто назначьте отдельную промежуточную папку для каждого проекта.

Подробнее об этом читайте здесь

Я решил ее следующим образом:

Перейдите в раздел просмотр - > страницы свойств -> свойства конфигурации -> Компоновщик -> ввод

В разделе Дополнительные зависимости добавьте thelibrary.lib. Не используйте никаких цитат.

У меня была аналогичная проблема в том, что я получал LINK1181 ошибок в файле .OBJ , который был частью самого проекта (а во всем проекте было только 2 .cxx файла).

Я натыкаюсь на ту же проблему. Для меня это, по-видимому, вызвано наличием 2 проектов с одинаковым названием, Один из которых зависит от другого.

Например, у меня есть один проект под названием Foo, который производит Foo.lib. Затем у меня есть еще один проект, который также называется Foo, который производит Foo.exe и ссылки в Foo.lib.

Я наблюдал за монитором процесса file activity w/. Что, кажется, происходит это фу(Либ) строится в первую очередь-это правильное, т. к. функция(exe) отмечен как в зависимости от Фу(Либ). Все это прекрасно и успешно строится, и помещается в вывод directory--$(OutDir)$(TargetName)$(TargetExt)., а затем Foo (exe) запускается для перестройки. Ну, перестройка-это чистка, за которой следует сборка. Похоже, что этап 'clean' Foo.exe удаляет Foo.lib из выходного каталога. Это также объясняет, почему работает последующий 'build'-который не удаляет выходные файлы.

Наверное, ошибка в VS.

К сожалению, у меня нет решения этой проблемы, поскольку она включает в себя перестройку. Обходной путь состоит в том, чтобы вручную выполнить очистку, а затем построить.

Я не знаю почему, но изменение ссылки Linker->Input->Additional Dependencies с "dxguid.lib" на "C:\Program Files (x86)\Microsoft DirectX SDK (июнь 2010)\Lib\x86\dxguid.lib" (в моем случае) было единственным, что сработало.

Для меня проблема заключалась в неправильном каталоге include . Я понятия не имею, почему это вызвало ошибку с кажущейся отсутствующей lib, поскольку каталог include содержит только заголовочные файлы. И в библиотечном каталоге был установлен правильный путь.

Может быть, у вас проблемы с оборудованием.

У меня была та же проблема в моей старой системе (AMD 1800 MHz CPU ,1GB RAM ,Windows 7 Ultimate) ,пока я не изменил 2x 512 MB RAM на 2x 1GB RAM . С тех пор у меня не было никаких проблем. Исчезли и другие (незначительные) проблемы. Думаю, эти два модуля 512 MB не очень нравились друг другу, потому что 2x 512 MB + 1GB или 1x 512 MB + 2x 1GB тоже не работали должным образом.

Чтобы получить форму 8.3, выполните (в командной строке):

рекурсивно через каждый уровень каталогов.

У меня была такая же ошибка при запуске lib.exe из cmd на Windows с длинным списком аргументов. по-видимому, cmd.exe имеет максимальную длину строки около 8K символов, что привело к тому, что имена файлов в конце этого порога были изменены, что привело к плохой ошибке имени файла. мое решение состояло в том, чтобы обрезать линию. Я удалил все пути из имен файлов и добавил один путь, используя опцию /LIBPATH. например:

У меня была та же проблема. Решил его, определив макрос OBJECTS , который содержит все объекты компоновщика, например:

А затем укажите $(OBJECTS) в командной строке компоновщика.

Однако я не использую Visual Studio , только nmake и файл .MAK

Я нашел для этого другое решение.

На самом деле я пропустил разделитель запятых между двумя библиотечными путями. После добавления common это сработало для меня.

Перейдите по адресу: Project properties -> Linker -> General -> Link Library Dependencies по этому пути убедитесь, что путь к библиотеке правильный.

Предыдущий код ( с ошибкой -потому что я забыл разделить два пути lib запятой):

Код после исправления (просто отдельные библиотеки с запятой):

Надеюсь, это вам поможет.

В моем случае библиотека была установлена с помощью пакета NuGet (cpprestsdk), и я ложно добавил lib к дополнительным зависимостям в настройках компоновщика. Оказывается, пакет делает все это за вас.

Затем компоновщик попытался найти библиотеку в библиотечном пути и, конечно же, не смог ее найти.

После удаления библиотеки из дополнительных зависимостей все скомпилировалось и связалось нормально.

Я создал каталог bin на уровне project_dir, а затем создал каталог release/debug внутри папки bin , что решило проблему для меня.

Похожие вопросы:

У меня VS 2010 на Windows 7. Я создаю новый проект, выбираю язык c++, Win32 project, DLL, экспортирую символы и заканчиваю. Теперь, когда я компилирую проект без каких-либо изменений в том, что.

Я использую код алгоритма SIFT Роба Хесса , который использует библиотеку OpenCV в Windows. И у меня есть visual studio 2008 в качестве IDE. Когда я запускаю программу для сопоставления изображений.

При попытке установить определенный геофизический инструментарий Python я получаю эту ошибку: LINK: фатальная ошибка LNK1181: не удается открыть входной файл 'm.lib' Я считаю, что это связано с тем.

Я столкнулся с ошибкой в Visual Studio 2005 году. Я использовал boost python (boost_1_54_0)для интерфейса python 3.3.2 с c++. Я следовал этому учебнику.

Я пытался скомпилировать проект VC6 на работе, с VS2008 . Мне удалось успешно удалить все ошибки компиляции и предупреждения в моем унаследованном коде. Но на этапе связывания я столкнулся со.

Хиии. Я использую opencv-2.4.11 с microsoft visual studio 12 express edition с поддельным ключом и windows 8.1. У меня нет проблем с компиляцией моего кода, но когда я строю свой проект, он.

Я новичок в программировании с Visual studio 2013, и я создал проект (игру) и создал установщик с помощью Cmake. Но когда я строю свой проект, я получаю следующую ошибку: и у меня была следующая.

Я пытаюсь скомпилировать cudamat в моем Windows 10, используя командную строку VS2015 x64 native tools. Я уже установил Cuda toolkit 8, а также Visual Studio 2015 с компилятором MSVC. После загрузки.

Я пытаюсь установить версию поддержки xgboost gpu, следуя следующим инструкциям. xgboost-gpu-support Я использую windows 10, visual studio 2017. Версия not-gpu-support работает нормально. Но для.

Я уже некоторое время сталкиваюсь со странной ошибкой в ​​Visual Studio 2010.

У меня есть решение, состоящее из проекта, который компилируется в статическую библиотеку, и другого проекта, который действительно прост, но зависит от этой библиотеки.

Иногда, в последние дни, очень часто, после перестройки решения или просто компиляции с 1-3 измененными исходными файлами, я получаю следующую ошибку:

Где компиляция thelibrary.lib прошла успешно без каких-либо ошибок или предупреждений.

Я пытался очистить раствор, но это не всегда работает.

В Linker, вообще, дополнительные каталоги библиотек, добавьте каталог в .dll или .libs, которые вы включили в Linker, Input. Это не работает, если вы поместите это в каталоги VC++, каталоги библиотек.

Я вижу, что здесь происходит только 1 вещь: вы неправильно установили зависимости для thelibrary.lib в своем проекте, что означает, что thelibrary.lib собран в неправильном порядке (или в то же время, если у вас более 1 конфигурации сборки CPU, что также может объяснить случайность ошибки). (Вы можете изменить зависимости проекта в: Меню-> Проект-> Зависимости проекта)

В принципе, если у вас есть пробелы на пути к .lib, это плохо. Не знаю, так ли это с тобой, но кажется разумным.

Исправление: 1) поместите ссылку на lib в "кавычки", или 2) добавьте путь к lib в ваши каталоги библиотеки (Свойства конфигурации >> Каталоги VC++).

У меня была одна и та же проблема как в VS 2010, так и в VS 2012. В моей системе была собрана первая статическая библиотека, а затем она была немедленно удалена, когда основной проект начал собираться.

Проблема в общей промежуточной папке для нескольких проектов. Просто назначьте отдельную промежуточную папку для каждого проекта.

Подробнее об этом здесь

Я решил это со следующим:

Под дополнительными зависимостями добавьте thelibrary.lib. Не используйте цитаты.

У меня была похожая проблема в том, что я получал ошибки LINK1181 в файле .OBJ , который был частью самого проекта (и во всем проекте было только 2 файла .cxx).

Я не знаю почему, но меняю ссылку Linker-> Input-> Additional Dependencies с "dxguid.lib" на "C:\Program Files (x86)\Microsoft DirectX SDK (июнь 2010 г.)\Lib\x86\dxguid". lib "(в моем случае) было единственным, что сработало.

Я сталкиваюсь с той же проблемой. Для меня это, кажется, вызвано наличием двух проектов с одинаковыми именами, один из которых зависит от другого.

Например, у меня есть один проект с именем Foo, который производит Foo.lib. Затем у меня есть другой проект, который также называется Foo, который производит Foo.exe и ссылки в Foo.lib.

Я смотрел файл активности ж/Process Monitor. Кажется, происходит то, что сначала создается Foo (lib) - это правильно, потому что Foo (exe) помечен как зависящий от Foo (lib). Это все нормально и успешно собирается, и помещается в выходной каталог - $ (OutDir) $ (TargetName) $ (TargetExt). Затем Foo (exe) запускается для восстановления. Ну, перестройка - это чистая, за которой следует сборка. Кажется, что "чистым" этапом Foo.exe является удаление Foo.lib из выходного каталога. Это также объясняет, почему работает следующая сборка, которая не удаляет выходные файлы.

Ошибка в VS, я думаю.

К сожалению, у меня нет решения проблемы, так как оно связано с перестройкой. Обходной путь должен вручную выполнить Очистку, а затем Построить.

Для меня проблема была в неправильном каталоге include . Я понятия не имею, почему это вызвало ошибку с отсутствующей на первый взгляд библиотекой, поскольку каталог include содержит только файлы заголовков. И в каталоге библиотеки был указан правильный путь.

У меня была такая же ошибка при запуске lib.exe из cmd в Windows с длинным списком аргументов. очевидно, cmd.exe имеет максимальную длину строки около 8 КБ символов, в результате чего имена файлов в конце этого порога были изменены, что привело к ошибочной ошибке в имени файла. Мое решение состояло в том, чтобы урезать линию. Я удалил все пути из имен файлов и добавил один путь, используя параметр/LIBPATH. например:

Может быть, у вас есть проблемы с оборудованием.

У меня была такая же проблема в моей старой системе (процессор 1800 МГц AMD, 1 ГБ RAM, Windows 7 Ultimate), пока я не изменил 2x 512 МБ RAM на 2x 1 ГБ ОЗУ. С тех пор не было никаких проблем. Также исчезли другие (незначительные) проблемы. Думаю, эти два модуля по 512 МБ не очень понравились друг другу, потому что 2x 512 МБ + 1 ГБ или 1x 512 МБ + 2x 1 ГБ тоже не работали должным образом.

В моем случае у меня была установлена ​​библиотека с использованием пакета NuGet (cpprestsdk), и я ошибочно добавил библиотеку к дополнительным зависимостям в настройках компоновщика. Оказывается, пакет делает все это за вас.

Затем компоновщик попытался найти библиотеку в пути к библиотеке и, конечно, не смог ее найти.

После удаления библиотеки из дополнительных зависимостей все скомпилировалось и связывалось нормально.

Я нашел другое решение для этого .

На самом деле, я пропустил разделитель запятой между двумя путями библиотеки. После добавления общего у меня это сработало.

Перейдите по адресу: Project properties -> Linker -> General -> Link Library Dependencies . По этому пути убедитесь, что путь к библиотеке правильный.

Предыдущий код (с ошибкой - потому что я забыл разделить два пути lib запятой):

Код после исправления (просто разделяйте библиотеки запятыми):

Надеюсь, что это поможет вам.

У меня такая же проблема. Решил это путем определения макроса OBJECTS , который содержит все объекты компоновщика, например:

Затем укажите $(OBJECTS) в командной строке компоновщика.

Я не использую Visual Studio хотя, просто nmake и файл .MAK

Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно.
Вам необходимо обновить браузер или попробовать использовать другой.

DEsTR0Y

Новичок

При сборке решения выбивает такую ошибку: 1>LINK : fatal error LNK1181: не удается открыть входной файл "plugin.lib"
Проект создавался для GTA Sa, тип плагина: dll
В чём может быть проблема?

iAmerican

Известный

Что тут не понятного? Файла либо нет , либо путь неправильный

DEsTR0Y

Новичок

Что тут не понятного? Файла либо нет , либо путь неправильный

Как проверить, есть этот файл или нет? Если нет, то где можно скачать, а если есть, то где можно настроить для него путь? Такое только с Plugin SDK, при создании обычной Dll библиотеки никаких ошибок нет

iAmerican

Известный

Как проверить, есть этот файл или нет? Если нет, то где можно скачать, а если есть, то где можно настроить для него путь? Такое только с Plugin SDK, при создании обычной Dll библиотеки никаких ошибок нет

DEsTR0Y

Новичок

Все когда-то были новичками и порой тупили. В статье, в которой я и узнал про Plugin SDK, всё было довольно просто(там был пример изменения погоды). Ведь большинство действий делаются аналогично, не так ли? Делать что-то особо сложное я в ближайшее время не планирую, на данный момент мне надо только простенькие действия(вроде изменения погоды) и вывод текста в чат. Разве это так сложно?
Да и попробовать все-таки надо, а вдруг получится. Лучше попробовать и ошибиться, чем не попробовать вообще и потом жалеть об этом.

iAmerican

Известный

Все когда-то были новичками и порой тупили. В статье, в которой я и узнал про Plugin SDK, всё было довольно просто(там был пример изменения погоды). Ведь большинство действий делаются аналогично, не так ли? Делать что-то особо сложное я в ближайшее время не планирую, на данный момент мне надо только простенькие действия(вроде изменения погоды) и вывод текста в чат. Разве это так сложно?
Да и попробовать все-таки надо, а вдруг получится. Лучше попробовать и ошибиться, чем не попробовать вообще и потом жалеть об этом.

Читайте также: