Как вы работаете с точками отладки размещения в службе Windows?

October 20, 2021 By John Anthony Off

Рекомендуется: Fortect

  • 1. Скачайте и установите Fortect
  • 2. Откройте программу и нажмите "Сканировать"
  • 3. Нажмите "Восстановить", чтобы начать процесс восстановления.
  • Загрузите это программное обеспечение и почините свой компьютер за считанные минуты. г.

    За последние несколько дней группа читателей наткнулась на эффективный код ошибки, показывающий, как добавить точки отладки в службу Windows. Эта проблема может возникнуть по нескольким веским причинам. Об этом и поговорим ниже. грамм.На всей вкладке проекта «Домашнее приложение» обычно задайте для параметра «Тип вывода» значение «Консольное приложение». Выберите Начать отладку (F5). Чтобы запустить всю программу как заднюю часть службы Windows, установите и создайте ее, как обычно, для официальной службы Windows. Эти изменения не хотят принимать во внимание.

    грамм.

    • несколько минут до чтения.

    Вы можете отлаживать настоящую программу Windows, запустив предприятие и добавив отладчик в основной процесс обслуживания клиентов. Для получения дополнительной информации см. Как отлаживать приложения-службы Windows . Однако для частой отладки программы Windows Service System.ServiceProcess.ServiceBase.OnStart вам может потребоваться запустить этот отладчик, который использует этот метод.

    1. В начале фактического метода OnStart () добавьте функциональный вызов к Launch .

      Рекомендуется: Fortect

      Вы устали от медленной работы компьютера? Он пронизан вирусами и вредоносными программами? Не бойся, друг мой, Fortect здесь, чтобы спасти положение! Этот мощный инструмент предназначен для диагностики и устранения всевозможных проблем с Windows, а также для повышения производительности, оптимизации памяти и поддержания вашего ПК в рабочем состоянии. Так что не ждите больше - скачайте Fortect сегодня!

    2. 1. Скачайте и установите Fortect
    3. 2. Откройте программу и нажмите "Сканировать"
    4. 3. Нажмите "Восстановить", чтобы начать процесс восстановления.

      защищенные выигрыши недействительны OnStart (string [] args)   Система .Diagnostics.Debugger.Launch (); 
  • Как запустить службу (можно запустить , net или в окне программы).

    Вы должны увидеть такой чудесный диалог:

  • Выберите Debug .

  • В окне грузовика Just-In-Time Debugger выберите версию Visual Studio, для которой вы хотите выполнить отладку.

    Скриншот окна грузовика отладчика JIT Visual Studio с 'Новая функциональность Microsoft Visual Studio выбрана 2015' в списке возможных отладчиков.

  • Создается новый экземпляр Visual Studio, и выполнение останавливается с использованием этих конкретных методов Debugger.Launch () .

  • См. также

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

    Обычно мой короткий ответ: я использую следующие строки кода:

      #if DEBUG    base.RequestAdditionalTime (600000); // означает 600 (пусто) 1000 мс 10-минутный тайм-аут    Debugger.Launch (); // Запускаем свой отладчик, но также присоединяем его#end if 

    Они вставляются в каждый метод OnStart основной службы:

      защищенное переопределение обнулить OnStart (строка [] args)    #if DEBUG       base.RequestAdditionalTime (600000); 10 // минут задержки отправления       Debugger.Launch (); // Запускаем отладчик вместе с его присоединением    #end if    MyInitOnstart (); // моя индивидуальная инициализация по сравнению с кодом объекта    // Позволяет базовому классу выполнять всю необходимую работу    base.OnStart (аргументы); 

    как поставить отладочный момент для оконной службы

    Для тех, кто вместе с вами еще не сделал этого, я включил подробные советы ниже, чтобы увидеть, как легко получить выстрел b. Следующие примечания относятся к Windows 7x64 и Visual Studio 2010 Team Edition, но также должны относиться практически к любым применимым дополнительным средам. Развернуть

    <время>

    Важно: служба активна в «ручном» режиме (либо используйте большую часть фактической утилиты InstallUtil через некоторую часть командной строки VS, либо запустите сам проект службы, который вы подготовили). Visual Free Studio перед запуском обслуживания клиентов в дополнение к загрузке решения, содержащего их исходный код для нашей собственной системы - установите дополнительные более высокие точки останова в любое время, когда вам понадобятся и то, и другое в Visual Studio - затем настройте использование службы на панели конфигурации службы.

    Из-за программного кода Debugger.Launch этот неожиданный результат приведет к последнему необработанному сообщению «Требуется имя сервера исключений Microsoft .NET Framework in.exe». появляться. Нажмите Да, Debug Servicename.exe , это последний снимок монитора:

    После этого, особенно в отношении Windows 7 UAC, вас могут попросить ввести учетные данные администратора. Введите его также с помощью weiter mit Das, ja :

    после отображения определенной хорошо известной области оконной студии Just-In-Time Debugger Visual S. Он спрашивает, хочет ли человек выполнять отладку с помощью одного очищенного отладчика. Прежде чем щелкнуть Да , убедитесь, что вы не хотите повторно открывать новый экземпляр (вариант 2) - один конкретный отдельный новый экземпляр здесь больше не будет полезен, поскольку источник информации по страницам не будет отображается. Вместо этого вы выбираете средства визуального экземпляра, которые вы настроили ранее:

    как установить время точки отладки для оконной службы

    После обработки Да , через некоторое время Visual Studio отобразит желтый указатель справа с очередью, содержащей комментарий Debugger.Launch , и вы можете их исправить. ... препятствия кодируют ваш (метод MyInitOnStart , который, вероятно, содержит вашу инициализацию).

    Когда вы нажимаете F5 , выполнение будет продолжаться немедленно, пока не будет достигнута новая подготовленная вами точка останова.

    Совет. Чтобы служба продолжала работать, выберите «Отладка» -> «Отключить все». Таким образом, вы можете запустить покупателя, который будет связываться со специалистом после успешного запуска, а также вы обычно завершаете отладку кода запуска. Если вы отмените Shift + F5 (остановить эту отладку) на носителе, этот тип службы будет остановлен. Вместо этого ваша семья должна использовать активную панель управления службами, чтобы остановить это.


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

    • Я создаю Debugger.Launch () , который распаковывает и просто добавляет отладчик. Я также подразумеваю тестирование Debugger.Break () , и это не сработает, потому что Neo-Debugger обычно все еще подключен к запуску, ведущему к службе (которая, несомненно, купила 1067: "Ошибка процесса неожиданно прервано. ").

    • RequestAdditionalTime имеет более длительный тайм-аут, когда дело доходит до службы Itc (оно не задерживает значение, но само, вероятно, будет немедленно отображаться с помощью Debugger .Launch аргумент). В противном случае я бы предположил, что тайм-аут по умолчанию для их службы запуска слишком короткий, поэтому служба запуска не работает, за исключением случаев, когда общедоступные вызовы base.Onstart (args) достаточно быстро для этого отладчика. На практике 10-минутный тайм-аут снижает риск появления сообщения «Служба не вернула услугу ...» сразу после запуска какого-либо отладчика.

    • Когда вы попытаетесь привыкнуть к нему как к концепции, этот метод станет очень простым, когда вам нужно будет вставить только 2 строки кода в преобладающий код платформы, чтобы вы могли быстро проверить и исправить ошибки.

    Загрузите это программное обеспечение и почините свой компьютер за считанные минуты. г.

    Самый простой способ отладки - вызвать все функции, похожие на ваши, из программы. cs Main () отображает результаты, а не вызывает их из одной конкретной новой службы. Обратите внимание, что теперь эта стратегия используется только для отладки вашего кода.

    < p id = "2">При настройке в методе OnStart () добавьте самый актуальный вызов Launch.Запустите активную службу (вы можете использовать net start без with или запустить его, я бы сказал, в главном окне служб).Выберите Да, отладка <имя службы>.В окне Just-In-Time Debugger начните использовать версию Visual Studio, которую ваша семья хочет использовать для отладки.

    Чтобы добавить технику на свой локальный компьютер: В Visual Studio выберите «Отладка»> «Присоединить к процессу» (или нажмите Ctrl + Alt + P), чтобы открыть диалоговое окно «Присоединить к процессу». Проверьте тип соединения.

    How To Put Debug Point To Window Service
    Comment Mettre Le Point De Debogage Au Service De Fenetre
    Como Colocar O Ponto De Depuracao No Servico De Janela
    디버그 포인트를 윈도우 서비스에 넣는 방법
    Come Mettere Il Punto Di Debug Nel Servizio Finestra
    Hur Man Satter Felsokningspunkt Till Fonstertjanst
    Hoe Een Foutopsporingspunt In De Vensterservice Te Plaatsen
    Jak Umiescic Punkt Debugowania W Usludze Okna
    Como Poner El Punto De Depuracion Al Servicio De Ventana
    So Setzen Sie Einen Debug Punkt Auf Den Windows Dienst

    г.