Jit отладчик visual studio что это
Перейти к содержимому

Jit отладчик visual studio что это

  • автор:

Отладка проектов Office

Область применения:yesVisual Studio Visual Studio для Mac noVisual Studio Code no

Вы можете отлаживать проекты Office, используя те же средства Microsoft Visual Studio, которые вы используете для других проектов Visual Studio. Функции отладчика Visual Studio, такие как возможность вставки точек останова и просмотра переменных в окне «Локальные» также доступны при отладке проектов Office. Дополнительные сведения о средствах отладки Visual Studio см. в разделе «Отладка» в Visual Studio.

Чтобы упростить процесс отладки, перед выполнением сборки и отладки закройте все открытые экземпляры приложения Office.

Область применения. Сведения в этом разделе относятся к проектам уровня документа и проектам надстроек VSTO. См. сведения о функциях, доступных по Приложение Office и типу проекта.

Заинтересованы в разработке решений, которые расширяют возможности Office на нескольких платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office имеют небольшое пространство по сравнению с надстройками и решениями VSTO, и вы можете создавать их практически с помощью любой технологии веб-программирования, таких как HTML5, JavaScript, CSS3 и XML.

Запуск и остановка отладчика

Вы можете начать отладку проекта Office так же, как и начать отладку других проектов Visual Studio; Например, можно нажать клавишу F5 . При запуске отладки проекта надстройки VSTO запускается новый процесс для целевой Приложение Office ликации, а надстройка VSTO загружается.

Если отладка запускается для проекта уровня документа, документ или книга открывается в новом процессе Word или Excel.

Если отладчик останавливается, он обрывает процесс приложения или отсоединяется (если отладчик настроен на отсоединение). Все остальные документы, открытые в прерываемом процессе приложения Office, также закрываются без предупреждения, а все несохраненные изменения теряются. Это относится ко всем документам или книгам, открытым во время работы отладчика.

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

При отладке настройки уровня документа для Word многократная остановка отладчика и связанное с ней непредвиденное завершение программы могут привести к повреждению шаблона Normal. В этом случае поврежденный шаблон Normal можно удалить — он будет создан автоматически, как только вы снова откроете приложение Word. При этом макросы, сохраненные в шаблоне Word, не воссоздаются.

Отладка надстроек VSTO для Office 2013 с помощью Office 2013 или Office 2016

Если вы используете Visual Studio 2015, и у вас установлены обе версии Office параллельно, Visual Studio запускает Office 2016. Если вы используете Visual Studio 2013, Visual Studio запускает Office 2013.

Если отладку надстройки VSTO необходимо выполнить с использованием другой версии Office (2013 или 2016), откройте конструктор проектов, перейдите на вкладку Отладка и установите переключатель Запуск внешней программы . Затем укажите расположение соответствующего исполняемого файла приложения Office.

Поведение F10 и F11

При запуске отладки проекта Office F10 и F11 не имеют того же поведения, что и при запуске отладки других проектов Visual Basic или C#. В проектах Visual Basic или C# отладчик останавливается на основной функции, а в случае проектов Office Visual Studio не имеет контроля над основной функции приложения Office. Однако во время отладки F10 и F11 имеют те же функции, что и в проектах Visual Basic и C#.

Отображение исключений

В связи с особым взаимодействием между управляемым и неуправляемым кодом Visual Studio не отображает ошибки, которые выдают приложения Microsoft Office. Например, если надстройка VSTO, созданная с помощью средств разработки Office в Visual Studio, создает исключение, microsoft Приложение Office lication продолжается без отображения ошибки. Для просмотра этих ошибок настройте отладчик на прерывание в случае исключений среды выполнения. Дополнительные сведения см. в разделе «Управление исключениями с помощью отладчика».

Если отладчик настроен на прерывание в случае исключений среды выполнения, все исключения вызывают остановку отладчика, включая обработанные исключения и некоторые исключения первого шанса, которые возникли в самой среде выполнения и могут не иметь отношения к вашему проекту. Ошибки, связанные с невозможностью обнаружения файла msosec, возникают в любом проекте и не требуют внимания. Исключения msosec никак не влияют на ваше решение.

Для перехвата исключений можно также использовать добавлять к методам операторы Try. Catch .

По умолчанию Visual Studio не отображает ошибки JIT-отладки для проектов Office, но эту функцию можно включить, чтобы видеть возникающие ошибки. Дополнительные сведения см. в статье «JIT-отладка» в Visual Studio.

Аргументы командной строки

Если для начального действия на странице свойств отладки задано значение Start Project, Visual Studio не использует аргументы командной строки при отладке проекта, даже если в качестве параметров запуска заданы аргументы командной строки. Если вы хотите использовать аргументы командной строки при запуске отладки, необходимо выбрать действие «Пуск», отличное от запуска проекта.

Управление исходным кодом

Отладка свойств не выполняется для всех пользователей, зарегистрированных в системе контроля версий, одновременно. Проекты Visual Basic и C# сохраняют свойства отладки в файлы конкретных пользователей (имя_проекта.vbproj.user или имя_проекта.csproj.user), не входящие в систему управления версиями. Если отладку выполняют сразу несколько пользователей, каждый из них вводит свойства отладки вручную.

Отладка кэшированных наборов данных в проекте уровня документа

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

Отладка проектов документов Word на основе формата документа Word 97-2003 (*.doc)

Чтобы выполнить отладку проекта Документа Word на основе формата Документа Word 97-2003 (/DOC*), необходимо добавить папку проекта в список доверенных папок. Дополнительные сведения о том, как это сделать, см. в разделе «Предоставление доверия документам».

Отладка отключенных надстроек

Приложения Microsoft Office могут отключать надстройки VSTO, которые ведут себя непредсказуемым образом. Это делается для того, чтобы предотвратить загрузку неисправного кода при каждом запуске приложения. В то же время, непредвиденное поведение может возникать и в процессе обычной отладки. Сведения о повторном включении надстроек VSTO см. в статье «Практическое руководство. Повторное включение надстройки VSTO, которая была отключена.

В приложениях Microsoft Office используются два вида отключения надстроек VSTO: жесткое и мягкое.

Жесткое отключение

Жесткое отключение может возникать, когда надстройка VSTO приводит к неожиданному закрытию приложения. На компьютере разработчика оно применяется также в случае остановки отладчика во время выполнения обработчика событий Startup в надстройке VSTO. Если надстройка VSTO отключена, она отображается в списке «Отключенные элементы » в приложении.

Если Приложение Office ликация жестко отключает надстройку VSTO, созданную с помощью средств разработки Office в Visual Studio, приложение отключает только надстройку VSTO, которая вызвала сбой. Другие надстройки VSTO, созданные с помощью средств разработки Office в Visual Studio для того же приложения Office, будут загружаться по-прежнему.

Обратимое отключение

Мягкое отключение применяется, если вызванная надстройкой VSTO ошибка не приводит к неожиданному завершению работы приложения. Надстройка VSTO отключается мягким способом, например, если выдает необработанное исключение во время выполнения обработчика событий Startup . Если надстройка VSTO отключена, она отображается в списке неактивных надстроек приложений в приложении, а приложение изменяет значение записи реестра LoadBehavior для надстройки VSTO, чтобы указать, что она выгружается. Дополнительные сведения о записи реестра LoadBehavior см . в разделах реестра надстроек VSTO.

Устранение ошибок установки с помощью Просмотр событий

Среда выполнения набор средств Visual Studio для Office записывает сообщения в Просмотр событий в Windows для всех исключений, которые возникают при установке или удалении решений Office. Эти сообщения можно использовать для решения проблем развертывания и установки.

Устранение ошибок запуска с помощью файла журнала и сообщений об ошибках

Среда выполнения набор средств Visual Studio для Office может записывать все ошибки, возникающие во время запуска в файл журнала или отображать каждую ошибку в окне сообщения. По умолчанию эти параметры отключены. Вы можете включить параметры, создав переменные среды.

Чтобы каждая ошибка отображалась в окне сообщения, создайте переменную среды с именем VSTO_SUPPRESSDISPLAYALERTS и присвойте ей значение 0 (ноль). Чтобы отключить отображение сообщений, удалите эту переменную среды или присвойте ей значение 1 (один).

Чтобы ошибки записывались в файл журнала, создайте переменную среды с именем VSTO_LOGALERTS и присвойте ей значение 1 (один). Среда выполнения набор средств Visual Studio для Office создает файл журнала в папке, содержащей манифест развертывания надстройки VSTO, или в папке, содержащей документ или книгу, связанную с настройкой. При сбое среда выполнения набор средств Visual Studio для Office создает файл журнала в локальной папке %TEMP% . Для надстроек VSTO уровня приложения файлу журнала по умолчанию присваивается имя имя_надстройки.vsto.log. Для проектов уровня документа файлу журнала присваивается имя имя_документа.extension.log, например ExcelWorkbook1.xlsx.log. Чтобы остановить ведение журнала ошибок, удалите переменную среды или присвойте ей значение 0 (ноль).

Связанный контент

  • Создание решений Office
  • Практическое руководство. Повторное включение надстройки VSTO, которая была отключена
  • Программные надстройки VSTO

Страница «JIT-отладка», папка «Отладка», диалоговое окно «Параметры»

Область применения:yesVisual Studio Visual Studio для Mac noVisual Studio Code no

Чтобы получить доступ к странице JIT, перейдите к меню Сервис и щелкните пункт Параметры. В диалоговом окне Параметры разверните узел Отладка и выберите JIT. Эта страница позволяет включить JIT-отладку для управляемого кода, машинного кода и скриптов. Дополнительные сведения см. в разделе JIT-отладка.

JIT-отладку можно разрешить для программ следующих типов:

  • Управляемый
  • Нативный
  • Скрипт JIT-отладка — это технология отладки программы, запускаемой вне Visual Studio. Вы можете запустить программу, созданную в Visual Studio, вне среды Visual Studio. Если включена JIT-отладка, сбой программы вызовет появление диалогового окна с вопросом о том, необходимо ли выполнить отладку.

Связанные предупреждения

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

В качестве JIT-отладчика был зарегистрирован другой отладчик. Для восстановления включите JIT-отладку или запустите средство восстановления Visual Studio.

Это сообщение возникает, если в качестве JIT-отладчика установлен другой отладчик, возможно, отладчик Visual Studio более старой версии.

Также возможно отображение следующего сообщения:

Обнаружены ошибки регистрации JIT-отладки. Для восстановления включите JIT-отладку или запустите средство восстановления Visual Studio.

Если вы видите какое-либо из этих предупреждений, для JIT-отладки с Visual Studio 2012 необходимы права администратора до тех пор, пока проблема не будет устранена. Если попытаться разрешить проблему, не имея прав администратора, возникает следующее сообщение об ошибке:

Отказано в доступе». Администратор должен включить JIT-отладку или восстановить установку Visual Studio.

См. также

  • Отладка, диалоговое окно «Параметры»
  • Практическое руководство. Установка параметров отладчика

Отладка нескольких процессов (C#, Visual Basic, C++)

Область применения:yesVisual Studio Visual Studio для Mac noVisual Studio Code no

В Visual Studio можно выполнять отладку решения, имеющего несколько процессов. Можно запускать несколько процессов, переключаться между ними, прерывать и возобновлять их выполнение, пошагово проходить исходный код, останавливать отладку, завершать отдельные процессы или отсоединяться от них.

Запуск отладки с несколькими процессами

Если в решении Visual Studio могут независимо выполняться несколько проектов, можно выбрать проект, запускаемый отладчиком. Текущий запускаемый проект отображается полужирным шрифтом в обозревателе решений.

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

Чтобы начать отладку проекта из обозревателя решений без его назначения запускаемым, щелкните проект правой кнопкой мыши и выберите Отладка>Запустить новый экземпляр или Шаг с заходом в новый экземпляр.

Назначение запускаемого проекта или нескольких проектов на странице свойств решения

Changing the startup type for a project

  1. Выберите решение в обозревателе решений и щелкните значок Свойства на панели инструментов либо щелкните это решение правой кнопкой мыши и выберите пункт Свойства.
  2. На странице Свойства выберите Общие свойства>Запускаемый проект.
  3. Выберите Текущий выбор, Один запускаемый проект и файл проекта либо выберите Несколько запускаемых проектов. При выборе нескольких проектов запуска можно изменить порядок запуска и действие для каждого проекта: «Пуск», «Пуск», «Запуск» без отладки или «Нет«.
  4. Нажмите Применить или OK, чтобы применить изменения и закрыть диалоговое окно.

Присоединение к процессу

Отладчик также может присоединяться к приложениям, выполняемым в процессах вне Visual Studio, включая процессы на удаленных устройствах. После присоединения к приложению можно использовать отладчик Visual Studio. Функции отладки могут быть ограничены. Это зависит от того, было ли приложение построено с отладочной информацией, есть ли у вас доступ к исходному коду приложения и отслеживает ли JIT-компилятор отладочную информацию.

Присоединение к выполняющемуся процессу

Attach to Process dialog box

  1. После запуска приложения выберите Отладка>Присоединить к процессу.
  2. В диалоговом окне Присоединение к процессу выделите процесс в списке Доступные процессы и щелкните Присоединить.

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

Использование редактора реестра для автоматического запуска процесса в отладчике

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

  1. Запустите редактор реестра Windows с помощью regedit.exe.
  2. В редакторе реестра перейдите к параметрам выполнения файла HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image.
  3. Выберите папку приложения, которое требуется запустить в отладчике. Если приложение не указано в качестве дочерней папки, щелкните правой кнопкой мыши Параметры выполнения файла образа, выберите Создать>Раздел и введите имя приложения. Или щелкните правой кнопкой мыши новый раздел в дереве, выберите команду Переименовать, а затем введите имя приложения.
  4. Щелкните правой кнопкой мыши новый раздел в дереве и выберите Создать>Строковое значение.
  5. Измените имя нового значения с Новое значение № 1 на debugger .
  6. Щелкните debugger правой кнопкой мыши и выберите Изменить. Edit String dialog box
  7. В диалоговом окне Изменение строки введите vsjitdebugger.exe в поле Данные значения, а затем нажмите кнопку OK. Automatic debugger start entry in regedit.exe

Отладка с несколькими процессами

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

Включение или отключение приостановки всех процессов при прерывании одного процесса

  • В разделе Инструменты (или Отладка) >Параметры>Отладка>Общие установите или снимите флажок Прерывать все процессы при прерывании одного процесса.

Разрыв, шаг и продолжение команд

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

Command Выбрано Выбор отменен
Отладка>Остановить все Все процессы приостанавливаются. Все процессы приостанавливаются.
Отладка>Продолжить Все процессы возобновляются. Все приостановленные процессы возобновляются.
Отладка>Шаг с заходом, Шаг с обходом или Шаг с выходом Во время выполнения шага текущего процесса все процессы выполняются.
Затем все процессы приостанавливаются.
Текущий процесс выполняется пошагово.
Приостановленные процессы возобновляются.
Выполняемые процессы продолжают выполняться.
Отладка>Шаг с заходом (только текущий процесс), Шаг с обходом (только текущий процесс) или Шаг с выходом (только текущий процесс) Н/П Текущий процесс выполняется пошагово.
Остальные процессы сохраняют свое текущее состояние (остаются приостановленными или продолжают выполняться).
Окно исходного кода — Точка остановка Все процессы приостанавливаются. Приостанавливается только процесс окна исходного кода.
Окно исходного кода — Выполнить до курсора
Окно исходного кода должно находиться в текущем процессе.
Все процессы выполняются, а процесс в окне исходного кода выполняется до курсора и приостанавливается.
После этого приостанавливаются все остальные процессы.
Процесс в окне исходного кода выполняется до курсора.
Остальные процессы сохраняют свое текущее состояние (остаются приостановленными или продолжают выполняться).
Окно Процессы>Прервать процесс Н/П Выбранный процесс приостанавливается.
Остальные процессы сохраняют свое текущее состояние (остаются приостановленными или продолжают выполняться).
Окно Процессы>Продолжить процесс Н/П Выбранный процесс возобновляется.
Остальные процессы сохраняют свое текущее состояние (остаются приостановленными или продолжают выполняться).

Поиск исходных и символьных файлов (PDB)

Для перехода по исходному коду процесса отладчику требуется доступ к исходным файлам и файлам символов процесса. Дополнительные сведения см. в разделе Указание файлов символов (PDB) и исходных файлов.

Если не удается получить доступ к файлам процесса, для перемещения можно воспользоваться окном Дизассемблирование. Дополнительные сведения см. в разделе «Практическое руководство. Использование окна дизассембли».

Переключение между процессами

Во время отладки можно подключиться к нескольким процессам, но в любой момент времени только один из них будет активным в отладчике. Активный или текущий процесс можно выбрать с помощью панели инструментов Место отладки или в окне Процессы. Для переключения между процессами оба процесса должны находиться в режиме приостановки выполнения.

Установка текущего процесса на панели инструментов «Место отладки»

Switch between processes

  1. Чтобы открыть панель инструментов Место отладки, выберите Вид>Панели инструментов>Место отладки.
  2. Во время отладки на панели инструментов Место отладки в раскрывающемся списке Процесс выберите процесс, который необходимо задать в качестве текущего.

Установка текущего процесса в окне «Процессы»

Processes window

  1. Чтобы открыть окно Процессы, во время отладки выберите Отладка>Окна>Процессы.
  2. В окне Процессы текущий процесс будет отмечен желтой стрелкой. Дважды щелкните процесс, который необходимо задать в качестве текущего.

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

Остановка отладки с несколькими процессами

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

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

Если отладка процесса запущена из решения Visual Studio, присоединитесь к другому уже запущенному процессу, затем выберите Остановить отладку и сеанс отладки завершится. Процесс, запущенный в Visual Studio, завершится, а процесс, к которому вы присоединились, продолжит выполняться.

Чтобы управлять влиянием параметра Остановить отладку на отдельный процесс, в окне Процессы щелкните процесс правой кнопкой мыши и выберите или снимите флажок Отсоединиться при остановке отладки.

Параметр отладчика Прерывать все процессы при прерывании одного не влияет на поведение остановки, завершения процессов и отсоединения от процессов.

Команды остановки, окончания и отсоединения

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

Command Description
Отладка>Остановить отладку Пока поведение не будет изменено в окне Процессы, процессы, запущенные отладчиком, завершаются, а присоединенные процессы отсоединяются.
Отладка>Завершить все Все процессы завершаются.
Отладка>Отсоединить все Отладчик отсоединяется от всех процессов.
Окно Процессы>Удалить процесс Отладчик отсоединяется от выбранного процесса.
Остальные процессы сохраняют свое текущее состояние (остаются приостановленными или продолжают выполняться).
Окно Процессы>Завершить процесс Выбранный процесс завершается.
Остальные процессы сохраняют свое текущее состояние (остаются приостановленными или продолжают выполняться).
Окно Процессы>Удалить при остановке отладки Если параметр выбран, Отладка>Остановить отладку отсоединяется от выбранного процесса.
Если параметр не выбран, Отладка>Остановить отладку завершает выбранный процесс.

См. также

  • Указание файлов символов (PDB) и файлов с исходным кодом
  • Подключение к выполняющимся процессам
  • Навигация по коду с помощью отладчика
  • JIT-отладка
  • Отладка многопоточных приложений

Вот я смотрю фильм, а тут JIT-отладчик выдает исключение. Что это за исключение?

Необработанное исключение (Не удалось получить свойство «vdata1631738138730» ссылки, значение которой не определено или является NULL) произошло в «utorrentie.exe [8380]». JIT-отладка данного приложения привела к сбою из-за следующей ошибки: Не установлен отладчик с влюченной функцией JIT-отладки. В Visual Studio JIT-отладка может быть включена в разделе Сервис/Параметры/Отладка/JIT.

Дополнен 2 года назад

Смотрел видео по адресу
vk com search и так далее, запрещено антиспам-системой, но поиск во вконтакте «Балабанов я тоже хочу»

Голосование за лучший ответ
NullPointerException
Алексей ШаяхметовМыслитель (8805) 2 года назад

И что?
Объекта нет, вылет.
И что это значит?
Почему в этом месте этого фильма? Почему от программы, объединяющей в своем имени имена «utorrent» и «ie» ?

Максим Искусственный Интеллект (193317) Алексей Шаяхметов, возможно, что utorrent вклинился в браузер как какой-нибудь плагин или ещё что.

Алексей ШаяхметовМыслитель (8805) 2 года назад
Я знаю, что null pointer. Это когда объекта нет. Кто-то его вытащил и его нет уже.
Алексей ШаяхметовМыслитель (8805) 2 года назад
Вообще, там ясно написано, что нет ссылки на что-то
Алексей ШаяхметовМыслитель (8805) 2 года назад
Заменю utorrent на другую программу. Что-то мутно как-то.
IE не находится в списке программ Windows7

Максим Искусственный Интеллект (193317) Алексей Шаяхметов, и слава Богу. Microsoft наверное его деинсталлировала. Потому что этот браузер можно считать уже официально мёртвым. Потому что это дерьмо, в гробу пусть там остается, забыть этот остой нафиг и не вспоминать. В общем да, по поводу utorrent. Он мне в своё время вирусы с рекламой при обновлении наустанавливал, поэтому от него ничего хорошего не жду.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *