Ошибка n 1104 ошибка чтения файла
Я создал новый проект на C ++ в Visual Studio 2008. Код еще не написан; Изменились только настройки проекта.
Когда я компилирую проект, я получаю следующую фатальную ошибку:
фатальная ошибка LNK1104: невозможно открыть файл 'C: \ Program.obj'
Эта конкретная проблема вызвана указанием зависимости для файла lib, в пути которого были пробелы. Для корректной компиляции проекта путь должен быть заключен в кавычки.
На вкладке Configuration Properties -> Linker -> Input свойств проекта есть свойство Additional Dependencies . Эта проблема была устранена путем изменения этого свойства с:
C: \ Program Files \ software sdk \ lib \ library.lib
"C: \ Program Files \ sofware sdk \ lib \ library.lib"
Где я добавил цитаты.
У меня такая же проблема. Если ваш компоновщик правильный, но каталог lib установлен неправильно, может возникнуть та же ошибка. Попробуйте заглянуть в Свойства конфигурации -> Каталоги VC ++ -> Каталоги библиотек, чтобы убедиться, что вы правильно установили библиотеку. Иногда папка lib состоит из папок x86 и x64. Вы должны установить его на один из них (в зависимости от вашего компилятора), а не на папку, содержащую оба.
Не забудьте поставить точку с запятой после "C:\Program Files\sofware sdk\lib\library.lib" . Отсутствие a ; также приведет к неправильной компиляции проекта.
Была эта проблема при попытке создать OpenCV с помощью Visual Studio 2005 (в Windows 8.1) . и она ее решила. Большой!
Я попробовал, но у меня ничего не вышло. "Qt5Xmld.lib"; "Qt5XmlPatternsd.lib"; "Qt5Cored.lib";% (AdditionalDependencies) -Что мне изменить?
Это может произойти, если файл все еще работает.
: -1: ошибка: LNK1104: не удается открыть файл 'debug \ ****. Exe'
Проблема исчезла для меня после закрытия и повторного открытия Visual Studio. Не уверен, почему возникла проблема, но, возможно, стоит попробовать.
Это было на VS 2013 Ultimate, Windows 8.1.
ах, Microsoft . Наша первая попытка всегда должна быть закрыта и снова открыта (или выключена и включена) - несколько загадочных ошибок исчезнут, когда мы сделаем это .
Мне так стыдно, что это решение может решить мою проблему. Теперь я больше не могу выходить на улицу, чтобы встретиться с друзьями и семьей.
Также убедитесь, что у вас не включено: Свойства конфигурации -> C / C ++ -> Препроцессор -> Предварительная обработка в файл .
В моем случае это тоже была проблема, но что мне делать, если я действительно хочу включить этот флаг (чтобы просмотреть файл Prepossessment)?
У меня была такая же проблема. Она вызывалась знаком "," в имени папки дополнительного пути к библиотеке. Решалась изменением пути к дополнительной библиотеке.
Моя проблема заключалась в отсутствии .lib расширения, я просто связывал его, mylib и VS решил его найти mylib.obj .
В моем случае речь шла о неверно направленной ссылке. Project ссылался на результат другого проекта, но последний не выводил файл, в котором искал первый.
Решение 1 (для моего случая): перезапустите процесс Windows Explorer (да, файловый менеджер Windows).
- Закройте Visual Studio. Выход из Windows
- Войдите, снова откройте Visual Studio
- Стройте как обычно. Теперь он собирается и может получить доступ к проблемному файлу.
Я предполагаю, что иногда файловая система или тот, кто ее контролирует, теряются со своими разрешениями. Перед перезапуском сеанса Windows пытался убить msbuild32.exe процессы зомби , перезапустить визуальную студию, не проверять, даже показывая файл проблемы. Нет проблем с конфигурацией сборки. Это случается время от времени. Что-то внутреннее в Windows не исправляется, требуется перезагрузка.
У меня была такая же ошибка, только с пакетом Nuget, который я установил (тот, который не является только заголовком), а затем попытался удалить.
Что было неправильно для меня, так это то, что я все еще включал заголовок для пакета, который я только что удалил, в одном из моих файлов .cpp (довольно глупо, да).
Я даже удалил ссылки на дополнительные каталоги библиотеки Project -> Properties -> Linker -> General , но, конечно, безрезультатно, поскольку я все еще пытался ссылаться на несуществующий заголовок.
У меня была такая же проблема, но решения для моего случая в ответах нет. Моя антивирусная программа (AVG) определила файл MyProg.exe как вирус и поместила его в «хранилище вирусов». Вам нужно проверить это хранилище, и если файл там - то просто восстановите его. Мне это помогло.
Для проекта сборки (ProjectName -> Build Dependencies -> Build Customizations -> masm (selected)) установка параметра Generate Preprocessed Source Listing на True вызвала проблему и для меня, очистка настройки устранила ее. VS2013 здесь.
У меня та же проблема с компоновщиком, который жалуется на отсутствие основного исполняемого файла. Это произошло во время переноса нашего решения на новую Visual Studio 2013 . Решение представляет собой разнообразное сочетание управляемых и неуправляемых проектов / кода. Проблема (и решение) заключалась в отсутствии файла app.config в папке решения. Потребовался день, чтобы понять это :(, поскольку журнал вывода не очень помог.
Я отвечаю, потому что не вижу этого конкретного решения в списке других.
По-видимому, мой антивирус (Ad-Aware) отмечал DLL, от которой зависит один из моих проектов, и удалял ее. Даже после исключения каталога, в котором находится DLL, такое же поведение продолжалось до тех пор, пока я не перезагрузил свой компьютер.
В моем случае я заменил файлы математической библиотеки из предыдущего курса Game Engine Graphics на GLM. Проблема заключалась в том, что я не добавил их в проект в обозревателе решений Visual Studio (даже если они были в репозитории проекта).
Надеюсь, этот ответ поможет кому-то в нужде.
Я решил его добавление в существующий проект к моему решению , которое я забыл добавить в первый раз.
У меня была такая же ошибка:
Это было вызвано ; в конце. Если у вас несколько библиотек, их следует разделять пустым пространством (пробел), без запятой или точкой с запятой!
Так что не используйте ; или что-либо еще при перечислении библиотек в Project properties >> Configuration Properties >> Linker >> Input
Я пробовал вышеуказанное решение, но у меня не получилось. Поэтому я переименовал exe и перестроил решение. Меня устраивает.
У меня была эта точная ошибка при создании VC ++ DLL в Visual Studio 2019:
LNK1104: невозможно открыть файл 'C: \ Program.obj'
Применяется к: Windows Server 2012 R2
Исходный номер КБ: 4042791
Устранение неполадок
Эти методы можно использовать для устранения ошибок базы данных Jet:
Убедитесь, что все базы данных Active Directory и файлы журналов развернуты на подходящем оборудовании.
Многие, но не все диски SATA и IDE не поддерживают команду флеш-записи. Диски SAS поддерживают его.
Базы данных Active Directory и файлы журналов должны использовать диски SAS на контроллерах SAS, которые имеют резервное копирование батареи на любом элементе кэширования записи.
Если 0xc00002e1 (c00002e1) и 0xc00002e2 (c00002e2) являются виртуальными контроллерами домена для гостей, работающими на Windows Server 2012 Hyper-V хостах, установите исправление из потери согласованности с виртуальными жесткими дисками, присоединенными к IDE, когда на сервере хост Hyper-V происходит незапланированная перезагрузка на хостах и гостевых компьютерах, как это необходимо.
Проверьте, указывает ли событие, предшествовавшие ошибкам загрузки LSASS 0xc00002e1 (c00002e1) и 0xc00002e2 (c000002e2).
- Незаплановый отключение электроэнергии.
- Система зависает.
- Установка Windows обновлений или пакетов служб.
- Добавление или удаление дисков, томов или разделов в локализованную систему.
- Отказ жесткого диска.
- NTDS. DIT или один или несколько файлов журнала были скопированы с другого компьютера или даже с предыдущей точки в этой жизни DCs.
- Неизвестно
Запустите компьютер в режим восстановления служб каталогов.
Лучшая практика. Сделайте резервное копирование системного состояния, чтобы можно было откатать все изменения, внесенные во время сеанса восстановления.
Передовая практика. Попросите администратора на переднем фронте найти последнее резервное копирование состояния системы, чтобы можно было учитывать наличие или несуществоство резервных копий системного состояния в планы восстановления. Если возможно, администратор делегирует расположение любых резервных копий.
Запустите NTDSUTIL ->-> Info.
путь к NTDS. DIT и файлы журналов.
Убедитесь, что диск, на котором размещены NTDS. DIT или файлы журнала доступны в запуске ОС.
Откройте Windows Explorer и убедитесь, что NTDS. DIT и файлы журналов присутствуют на пути файла журнала, сообщаемом на шаге 7.
Если файлы присутствуют, приступить к шагу 10.
Если файлов нет, поиск всех доступных дисков и томов для NTDS. DIT и файлы журнала, которые относятся к этому экземпляру Active Directory.
Может быть несколько NTDS. DIT и файлы журнала, присутствующие на локальных дисках. Чтобы найти правильный экземпляр, используйте марки даты и времени.
Исправление путей для баз данных и путей файлов журнала по мере необходимости.
Проверка разрешений файлов для версии ОС, о чем идет речь.
ОС требуется достаточное количество разрешений на Windows Server 2003.
- Корень тома, на который размещена NTDS. Файлы журналов DIT и NTDS (система требует полного контроля)
- Папка %windir% (например, c:\windows или c:\winnnt) (система требует полного контроля)
- Папка, в которую размещены NTDS. Файлы журналов DIT и NTDS (см. таблицу разрешений ниже)
- Сами файлы журнала NTDS (см. таблицу perms ниже)
Убедитесь, что правильные файлы журнала находятся в каталоге файлов журнала:
NTDSUTIL /FILES определит каталог баз данных и каталог файлов журналов, если они отличаются. NTDSUTIL /MH определит, какие файлы журналов необходимы в каталоге файлов журнала.
Ни при каких обстоятельствах не следует скопировать базу данных или файлы журнала из одного DC в другой dc, чтобы сделать второй dc функциональным.
Подтверждение того, что сжатие диска или файла не включено ни в томе, где размещена NTDS. Том файла DIT или журнала.
Проверка состояния базы данных в NTDS. DIT снизу вверх.
Проверка состояния базы данных Jet снизу вверх. Переходите к следующему слою только в том случае, если его первый уровень завершается без ошибки.
Устранение неполадок, о чем сообщает ESE, логической или логической последовательности приложения при отсутствии физической согласованности приведет вас к неправильному пути устранения неполадок.
Эквивалентные команды NTDSUTIL и ESENTUTL для каждой более поздней команды показаны ниже:
Просмотр действия пользователя для первой ошибки с ошибкой Jet, с которой столкнулся во время шага 13. Выполните исправление по возможности.
Ремонт базы данных Jet:
- Некоторые ошибки базы данных Jet можно устранить с помощью NTDSUTIL и ESENTUTL.
- Некоторые ошибки базы данных Jet не могут быть восстановлены, и любые попытки их устранить не удастся. В таких случаях единственным обращением может быть восстановление резервного копирования системного состояния, предоплачиваемая до повреждения, или создание нового сервера. Если дик-компьютеры реплики устарели, вы должны продвигать дополнительные реплики в домен после попытки устранить корневую причину ошибок, связанных с оборудованием или программным обеспечением.
Ошибка Jet, возвращаемая в общем событии NTDS 1168, является ошибкой уровня приложения. Не действуйте по этой ошибке Jet, если только проверка логической согласованности Jet Physical и Application (проверенная в этом порядке) не пройдет без ошибок.
Что такое потерянное IO / Lost Flush
Когда приложение записывает данные на диск, диск указывает на успешность письменной операции. Однако, когда приложение пытается прочитать только что написаные данные, данные не существуют. Эта проблема называется потерянным I/O или потерянным флешом.
Эта ошибка возникает, когда компоновщику не удается открыть файл для чтения или записи. Ниже перечислены две наиболее распространенные причины этой проблемы.
Программа уже запущена или загружена в отладчике, и
пути к библиотеке неверны или не заключены в двойные кавычки.
Существует множество других возможных причин этой ошибки. Чтобы сократить их, сначала проверьте Тип файла. Затем используйте следующие разделы для выявления и исправления конкретной проблемы.
-550 JET_errDatabaseDirtyShutdown
Причина
Администратор изменил журналы или потерял флеш-данные при остановке.
Не удается открыть приложение или его PDB-файл
-551 JET_errConsistentTimeMismatch
Причина
Администратор изменил журналы или потерял флеш-данные при остановке.
Параллельная синхронизация сборок
если вы используете параллельный вариант сборки, Visual Studio мог заблокировать файл в другом потоке. Чтобы устранить эту проблему, убедитесь, что один и тот же объект кода или библиотека не встроены в несколько проектов. Используйте зависимости сборки или ссылки проекта, чтобы выбрать в проекте созданные двоичные файлы.
-510 JET_errLogWriteFail / Отказ записи для входа в файл
Причина
Произошел сбой записи журнала. Эта проблема может быть вызвана любым из следующих ниже.
- Контроллер, жесткий диск или другое оборудование перестали отвечать на команды дисков.
- Программное обеспечение, например антивирусное программное обеспечение, создало блокировки в файлах журнала Active Directory.
Решение
Перезапуск сервера восстановит доступ, если это проблема оборудования. Если проблема возникает часто, в этом порядке можно обновить прошивку, заменить контроллер или заменить диск.
Для проблемы, которая вызвана программным обеспечением, остановите службы, создав блокировки файлов в файловой системе. Например, определите, вызывает ли антивирусное программное обеспечение блокировки в файлах журнала Active Directory. Убедитесь, что соответствующие файлы были добавлены в список исключений антивирусов. Windows Server 2016 автоматически исключает некоторые файлы и папки из антивирусного сканирования, см. список автоматических исключений. Для Windows Server 2012 R2 см.:
Если действия 1 и 2 не устраняют проблему, определите, вызывает ли это приложение или служба, не включающие Майкрософт. Для этого выполните следующие действия:
- Нажмите Windows клавишу + R. Введите MSCONFIG и нажмите кнопку ОК. На вкладке Services выберите Скрыть все службы Майкрософт. Очистить поле для сторонних служб.
- Отключить все элементы запуска с включенной поддержкой.
- Перезапустите сервер.
Не удается открыть файл, созданный проектом
Эта ошибка может возникать, если файл filename еще не существует, когда компоновщик пытается получить к нему доступ. Это может произойти, когда один проект зависит от другого в решении, но проекты создаются в неправильном порядке. Чтобы устранить эту проблему, убедитесь, что ссылки проекта заданы в проекте, который использует этот файл. После этого отсутствующий файл будет создан до того, как он потребуется. дополнительные сведения см. в статьях добавление ссылок в проекты Visual Studio C++ и управление ссылками в проекте.
-1018 JET_errReadVerifyFailure / Ошибка Checksum на странице базы данных
Причина
DB поврежден из-за сбоя оборудования.
Решение
- Оцените стек диска, включая материнскую доску/контроллер, прошивку, соединители кабели и физические диски, а также свяжитесь с соответствующими поставщиками по известным вопросам. Сравните текущую конфигурацию с справочной конфигурацией поставщиков.
- Оцените, можно ли устранить проблему с помощью последних обновлений прошивки или она была вызвана недавним обновлением прошивки.
- Если некоторые DCs logging -1018s в то время как другие DCs в той же среде нет, и посмотрите на различия в конфигурациях оборудования.
- Базы данных, которые регистрируют эту ошибку, не могут быть восстановлены или восстановлены проверкой целостности или семантическим анализом базы данных в NTDSUTIL или ESENTUTL.
- Автономные дефрагмы могут устранить проблему в маловероятном случае, если проблема вызвана проблемой согласованности индекса.
- Попробуйте автономный defrag. Или восстановим резервное копирование состояния системы, предосудив его. Или усилие-демотируйте, выполните полную очистку метаданных и репромот. Если появится ошибка -1018, повторите ее до тех пор, пока не будет устранена корневая причина аппаратного обеспечения.
При ошибке Jet -1018s на виртуализированных DCs, работающих на одном виртуальном хосте только на компьютерах, использующих контроллер рейда на борту, ошибка может возникнуть из-за отсутствия бесперебойного питания (UPS) недостаточной мощности для бортовых рейдовых контроллеров для фиксации изменений на диске после потери электроэнергии. Обходным решением является настройка программного обеспечения UPS для отключения виртуализированных гостей при потере электроэнергии. Серверы, которые имеют выделенные (не на борту) контроллеры рейда с собственными резервными копиями батареи, не испытывают ошибку JET -1018.
Не удается открыть файл "К:\програм.ОБЖ"
Чтобы устранить эту проблему для сборок из командной строки, проверьте параметры параметра /libpath . Также проверьте пути, указанные в переменной среды LIB, и пути, указанные в командной строке. Обязательно используйте двойные кавычки для всех путей, содержащих пробелы.
Чтобы устранить эту проблему в интегрированной среде разработки, при необходимости добавьте двойные кавычки для следующих свойств проекта:
свойство каталоги библиотеки на странице свойств конфигурации > VC++ каталоги
Свойство " Дополнительные каталоги библиотек " на странице свойств " Общие" компоновщика > свойств > конфигурации
Свойство Дополнительные зависимости на странице свойств входных данных компоновщика > свойств > конфигурации .
-567 JET_errDbTimeTooNew
Причина
Дисковая подсистема потеряла I/O, вероятно, при зависанию или внеплановом отключении.
Решение
Проверка резервного копирования батареи на дисковый кэш.
обновленные библиотеки Windows SDK
Другие распространенные проблемы
Проблемы в переменной среды TMP
Если имя файла LNKnnn, то это имя файла, созданного компоновщиком для временного файла. Каталог, указанный в переменной среды TMP, может не существовать. Кроме того, для переменной среды TMP может быть задано несколько каталогов. Для переменной среды TMP должен быть указан только один путь к каталогу.
-1206 JET_errDatabaseCorrupted
Причина
Эта ошибка такая же, как отсутствующий/поврежденный файл журнала. Эта ошибка указывает на то, что произошел потерянный флеш .
Недостаточно места на диске
Эта ошибка может возникать, если на диске недостаточно места. Компоновщик использует временные файлы в нескольких ситуациях. Даже если на диске достаточно места, большие ссылки могут выпустить или фрагментировать свободное место на диске. Рассмотрите возможность использования параметра /OPT (оптимизация) . выполнение транзитного исключения COMDAT считывает все объектные файлы несколько раз.
-1605 JET_errKeyDuplicate / Незаконный дубликат ключа
Причина
Спорадическая ошибка. Эта ошибка может быть вызвана коррупцией индекса.
Решение
Удаление и переустановка Active Directory в dc. Запустите семантический анализ базы данных NTDUSITL. Если проблема сохраняется, выполните автономное дефрагма.
Причина
Администратор изменил журналы или потерял флеш-данные при остановке.
Windows библиотеки, например kernel32. lib
Если файл, который не удается открыть, является одним из стандартных файлов библиотеки, предоставляемых корпорацией Майкрософт, например kernel32. lib, может возникнуть ошибка конфигурации проекта или ошибка установки. убедитесь, что Windows SDK установлен. если для проекта требуются другие библиотеки майкрософт, такие как MFC, убедитесь, что компоненты MFC также установлены установщиком Visual Studio. Вы можете снова запустить установщик, чтобы добавить дополнительные компоненты в любое время. Дополнительные сведения см. в Изменение Visual Studio. Используйте вкладку отдельные компоненты в установщике, чтобы выбрать конкретные библиотеки и пакеты SDK.
Библиотеки для розничной торговли, отладки или конкретной платформы
Эта ошибка может возникнуть при первой сборке для новой целевой платформы или конфигурации, например в розничной торговле или ARM64. в интегрированной среде разработки проверьте, установлены ли набор инструментов платформы и Windows SDK версии , указанной на странице свойств общие . также убедитесь, что необходимые библиотеки доступны в каталогах библиотек , указанных на странице свойств каталоги VC++. Проверьте свойства каждой конфигурации, например Debug, Retail, x86 или ARM64. Если одна сборка работает, но другая нет, Сравните параметры обоих параметров. Установите все отсутствующие необходимые инструменты и библиотеки.
Справка, моей проблемы нет в списке!
У нас есть несколько приложений, разработанных в Visual Foxpro 8.0, работающих в центре обработки данных в Windows 2008 R2 на VMware. У нас также есть ферма Citrix в той же сети, где пользователи запускают еще одно приложение VFP 8.0 в сеансах Citrix. Все приложения имеют один и тот же набор таблиц данных, размещенных на файловом сервере (также Windows 2008 R2 VM). Виртуальные хосты подключаются LAN 10Gb (управляемый коммутатор).
С середины июля мы начали видеть случайные ошибки 1104 "Ошибка чтения файлов. " на нескольких разных приложениях на нескольких серверах. Все они ссылаются на разные файлы на файловом сервере.
Проблема началась в середине июля, и ее частота постепенно увеличивалась. Раньше это было наиболее часто во второй половине дня к 3 часам вечера, теперь это происходит с раннего утра до позднего вечера. Он влияет на серверы EDI (они запускают пакетные задания в автоматическом режиме), а также серверы Citrix и различные приложения. Это происходит, когда приложение VFP (любое из них) пытается открыть файл контейнера базы данных или отдельные таблицы чаще всего с помощью команды USE, но иногда выполняет оператор SQL Select или при загрузке формы VFP, которая открывает таблицы в DataEnvironment
Мы поймали момент, когда одна и та же ошибка произошла на двух разных серверах, работающих с разными приложениями в один и тот же момент (до секунды). В тот же момент мы также увидели два разных приложения, работающих на одном компьютере.
Мы заменили файловый сервер новой виртуальной машиной без рельефа (мы с тех пор изменили ее на старый файловый сервер).
Мы отключили антивирус.
Мы обновили VMware на всех хостах до последней версии.
Sysinternals Process Monitor отображает событие "INVALID_NETWORK_RESPONSE" при возникновении ошибки.
Мы зафиксировали трафик как на стороне сервера, так и на стороне клиента при возникновении ошибки и проанализировали его специалистом по сетевому анализу. Он заметил своеобразный образец, когда клиентская ОС начинает извлекать этот файл с файлового сервера. ПОСЛЕ VFP-приложения вызвало ошибку. Похоже, что приложение VFP запрашивает файл из ОС, затем либо получает ненормальный ответ, либо просто отключается, и только после этого ОС отправляет пакеты, запрашивающие файл. Опять же, это происходит спорадически.
OpLocks и SMB2 были отключены на всех компьютерах как на стороне сервера, так и на стороне клиента в течение многих лет, и все прошло гладко до сих пор.
У нас есть несколько приложений, разработанных в Visual Foxpro 8.0, работающих в центре обработки данных на Windows 2008 R2 на платформе VMware. У нас также есть ферма Citrix в той же сети, где пользователи запускают еще одно приложение VFP 8.0 в сеансах Citrix. Все приложения используют один и тот же набор таблиц данных, расположенных на файловом сервере (также на виртуальной машине Windows 2008 R2). Виртуальные хосты соединены локальной сетью 10 Гб (управляемый коммутатор).
С середины июля мы начали видеть случайные ошибки 1104 «Ошибка чтения файла . » в нескольких различных приложениях на нескольких серверах. Все они ссылаются на разные файлы на файловом сервере.
Проблема началась в середине июля, и ее частота постепенно увеличивалась. Раньше это было чаще всего во второй половине дня к 15.00, теперь - с раннего утра до позднего вечера. Это влияет на серверы EDI (они запускают пакетные задания в автоматическом режиме), серверы Citrix и различные приложения. Это происходит, когда приложение VFP (любое из них) пытается открыть файл контейнера базы данных или отдельные таблицы, чаще всего с помощью команды USE, но иногда выполняя оператор SQL Select, или при загрузке формы VFP, которая открывает таблицы в DataEnvironment.
Мы поймали момент, когда одна и та же ошибка произошла на двух разных серверах, на которых одновременно запущены разные приложения (с точностью до секунды). Мы также видели, как два разных приложения, запущенных на одном компьютере, одновременно выходили из строя.
Мы заменили файловый сервер на новую виртуальную машину без всякого облегчения (с тех пор мы вернули его к старому файловому серверу).
Мы отключили антивирус.
Мы обновили VMware на всех хостах до последней версии.
Sysinternals Process Monitor отображает событие «INVALID_NETWORK_RESPONSE» при возникновении ошибки.
Мы захватили трафик как на стороне сервера, так и на стороне клиента, когда произошла ошибка, и проанализировали его специалистом по сетевому анализу. Он заметил странную картину, когда клиентская ОС начинает извлекать соответствующий файл с файлового сервера ПОСЛЕ того, как приложение VFP выдало ошибку. Кажется, что приложение VFP запрашивает файл у ОС, затем оно либо получает ненормальный ответ, либо просто истекает время ожидания, и только после этого ОС отправляет пакеты, запрашивающие файл. Опять же, это случается спорадически.
OpLocks и SMB2 были отключены на всех компьютерах как на серверной, так и на клиентской стороне уравнения в течение многих лет, и до сих пор все работало гладко .
Библиотека vccorlib. lib
Слишком большие файлы
Эта ошибка может возникать из-за слишком большого размера файла. Библиотеки или объектные файлы, размер которых превышает гигабайт, может вызвать проблемы для 32-разрядного компоновщика. Возможным исправлением этой проблемы является использование 64-разрядного набора инструментов. Дополнительные сведения о том, как использовать 64-разрядный набор средств в командной строке, см. в разделе как включить 64-разрядный Visual C++ набор инструментов в командной строке. сведения о том, как использовать 64-разрядный набор инструментов в интегрированной среде разработки, см. в разделе использование MSBuild с 64-разрядным компилятором и инструментами. также см. статью Stack Overflow post: как сделать Visual Studio использовать собственную цепочки инструментов amd64.
Неправильные разрешения для файла
Эта ошибка может возникать, если у вас недостаточно разрешений для доступа к файлу filename. Это может произойти, если для доступа к файлам библиотеки в защищенных системных каталогах используется обычная учетная запись пользователя. Или, если вы используете файлы, скопированные с других пользователей, у которых все еще есть исходный набор разрешений. Чтобы устранить эту проблему, переместите файл в каталог проекта с возможностью записи. Если перемещенный файл имеет недоступные разрешения, выполните команду takeown.exe в окне командной строки администратора, чтобы стать владельцем файла.
Слишком длинные пути
Эта ошибка может появиться, когда путь к файлу расширяется до 260 символов. При необходимости измените структуру каталогов или Сократите имена папок и файлов, чтобы сократить пути.
-1022 JET_errDiskIO / ошибка IO диска
Причина
Общая ошибка диска. Ошибки IO диска означают, что при доступе к диску осмия столкнулась с неконкретной ошибкой. Эта ошибка может быть внесена в журнал, когда контроллеры возвращают общие ошибки, такие как "устройство не работает". Некоторые диски и версии Jet возвращают эту ошибку из-за проблем с CRC.
Решение
Проверьте весь стек драйвера.
Не удается открыть файл библиотеки Майкрософт
Приложение выполняется или загружается в отладчике
Если filename — имя исполняемого файла или связанный с ним PDB-файл, см. раздел Если приложение уже запущено. Затем проверьте, загружен ли он в отладчик. Чтобы устранить эту проблему, перед повторным созданием программы закройте программу и выгрузите ее из отладчика. Если приложение открыто в другой программе, например в редакторе ресурсов, закройте его. Если программа не отвечает, может потребоваться завершить процесс с помощью диспетчера задач. Также может потребоваться закрыть и перезапустить Visual Studio.
-528 JET_errMissingLogFile
Причина
Это может быть связано с неожиданным отключением, вызванным отключением электроэнергии или другим неожиданным отключением. К другим причинам относятся изменения администратора в файлах журналов (например, копирование старой копии) или поврежденное программное обеспечение резервного копирования или восстановления (если сразу после восстановления).
Решение
Восстановим базу данных из хорошо известной резервной копии или переустановим dc.
Не удается открыть сторонний файл библиотеки
Существует несколько распространенных причин этой проблемы.
Путь к файлу библиотеки может быть неверным или не заключен в двойные кавычки. Или, возможно, вы не указали его для компоновщика.
Возможно, вы установили 32-разрядную версию библиотеки, но при этом собираетесь на 64 бит или наоборот.
Библиотека может зависеть от других библиотек, которые не установлены.
Может потребоваться предоставить каталог библиотеки, переопределяющий каталог стандартной библиотеки. В командной строке используйте параметр /libpath . В интегрированной среде разработки используйте свойство Дополнительные каталоги библиотек на странице свойств " Общие" компоновщика > свойств > конфигурации для проекта.
Убедитесь, что установлены все версии библиотеки, необходимые для создаваемых конфигураций. воспользуйтесь программой управления пакетами vcpkg , чтобы автоматизировать установку и настройку для многих распространенных библиотек. По возможности лучше создавать собственные копии сторонних библиотек. Затем вы убедитесь, что все локальные зависимости библиотек созданы для тех же конфигураций, что и ваш проект.
-1021 JET_errDiskReadVerificationFailure / ОС возвращается ERROR_CRC из IO файла
Ошибка jet -1021 была новой по Windows Server 2008 R2. Windows версии, которые раньше Windows 2008 R2 возвращаются -1022 вместо.
-1021 определяет ошибку -1018, которая произошла на уровне диска. Другими словами, -1021 указывает, что диск возвращает ошибку суммы проверки и является конкретным источником проблемы в стеке диска.
Причина
Проблема может быть вызвана плохими блоками на жестком диске, которые жесткий диск может отслеживать.
Решение
Удаление и переустановка Active Directory на контроллере домена может вызвать хранение данных на здоровых блоках.
-1216 JET_errAttachedDatabaseMismatch
Причина
Администратор изменил журналы или потерял флеш-данные при остановке.
-501 JET_errLogFileCorrupt
Причина
Аппаратное обеспечение повребляли I/O при написании, или потерянный флеш-компьютер привел к непригодности журнала. Обычно база данных (DB) остается в поврежденном состоянии.
Решение
Восстановление базы данных из известной хорошей резервной копии или переустановка контроллера домена (DC).
Дополнительные зависимости, указанные в интегрированной среде разработки
При указании отдельных библиотек в свойстве Дополнительные зависимости используйте пробелы для разделения имен библиотек. Не используйте запятые или точки с запятой. При использовании пункта меню Правка для открытия диалогового окна Дополнительные зависимости используйте символы новой строки для разделения имен, а не запятых, точек с запятой или пробелов. Также используйте символы новой строки при указании путей к библиотекам в папках библиотек и дополнительных каталогах библиотек .
Сводка
Библиотеки vcruntime с отслеживанием версий
-543 JET_errRequiredLogFilesMissing
См. -528 /JET_errMissingLogFile (см. выше).
Причина
Администратор изменил журналы или потерял флеш-данные при остановке.
Дополнительная информация
Дополнительные сведения см. в следующей статье Microsoft:
Проблемы с путями или именами файлов
Приложение заблокировано антивирусным сканированием
Антивирусные программы часто временно блокируют доступ к вновь созданным файлам, особенно .exe и .dll исполняемые файлы. Чтобы устранить эту проблему, попробуйте исключить каталоги сборки проекта из антивирусного сканера.
Библиотеки в проектах из сетевых или других источников
При построении проекта, скопированного с другого компьютера, расположения установки библиотеки могут отличаться. Для сборок из командной строки убедитесь, что для сборки правильно заданы пути к переменной среды LIB и библиотеке. в Visual Studio можно просмотреть и изменить текущие пути к библиотекам, заданные на страницах свойств проекта. на странице VC++ каталоги выберите элемент управления "раскрывающийся список" для свойства каталоги библиотек , а затем нажмите кнопку изменить. В разделе вычисленное значение диалогового окна каталоги библиотек перечислены текущие пути поиска файлов библиотек. Обновите эти пути, чтобы они указывали на локальные библиотеки.
-1019 JET_errPageNotInitialized / Пустая страница базы данных
Причина
Это похоже на ошибку -1018, но из-за потерянного флеша страницы.
Потерянный флеш может представлять критическое изменение USN. Если одно и то же изменение не будет применяться к локальным DCs или к транзитным партнерам репликации, это может быть вредным, если существует один путь репликации.
Решение
Развертывание ОС на компонентах оборудования и дисковых подсистем класса сервера.
- Установка UPS на хост-компьютере.
- Установка контроллера диска с резервной копией батареи на борту.
- Отключите кэш записи на контроллере диска.
- Избегайте размещения NTDS. DIT и LOG-файлы на дисках IDE.
Базы данных, которые регистрируют эту ошибку, не могут быть восстановлены или восстановлены проверкой целостности или семантическим анализом базы данных в NTDSUTIL или ESENTUTL.
Автономные defrags могут разрешить проблему в маловероятном случае, если проблема вызвана проблемой согласованности индекса.
Попробуйте автономный defrag. Или восстановим резервное копирование состояния системы, предосудив его. Или принудить к понижению, выполнить полную очистку метаданных, а затем перепромит. Повторите до тех пор, пока не будет устранена корневая причина аппаратного обеспечения.
Читайте также: