У меня установлен Norton 360 в моей системе. Я запускаю этот проект WTL (VS2012) в режиме отладки, и в окне вывода я вижу следующую строку
‘CheckWTL.exe’ (Win32): загружен ‘C: \ ProgramFiles (x86) \ Norton360 \ NortonData \ 21.1.0.18 \ Definitions \ BASHDefs \ 20140510.001 \ UMEngx86.dll’.
Не удается найти или открыть файл PDB.
Почему в моем приложении загружена DLL-библиотека Norton. Приложение по-прежнему является базовым скелетом, и я не добавил ни одного кода.
Есть объяснения?
В соответствии с эта тема, DLL-библиотека Norton, похоже, внедряется в каждый процесс, запускаемый в системе.
Ваше антивирусное программное обеспечение, вероятно, использует преимущества AppInit_DLL
функция в Windows, которая позволяет загружать библиотеки DLL в каждый пользовательский процесс, документация здесь: http://msdn.microsoft.com/en-us/library/windows/desktop/dd744762(v=vs.85).aspx
Если он использует функцию AppInit, вы можете использовать такой инструмент, как автозапуск (доступный из MSDN: http://msdn.microsoft.com/en-us/library/bb963902.aspx ), чтобы удалить запись, однако ваше программное обеспечение AV может обнаружить это и принудительно переустановить себя. Я предлагаю отключить ваше AV-программное обеспечение (или, по крайней мере, часть защиты в реальном времени) в соответствии с инструкциями Symantec, чтобы избежать этого в будущем.