Udostępnij za pośrednictwem


Konfigurowanie edycji i kontynuowania (C#, VB, C++)

W oknie dialogowym programu Visual Studio Opcje, podczas projektowania, można wyłączyć lub włączyć funkcję Przeładowywanie na gorąco, wcześniej znaną jako Edycja i kontynuacja. przeładowywanie na gorąco działa tylko w kompilacjach debugowania. Aby uzyskać więcej informacji, zobacz Hot Reload.

Edytuj i kontynuuj to funkcja oszczędzająca czas, która umożliwia wprowadzanie zmian w kodzie źródłowym, gdy program jest w trybie przerwania. Gdy wznowisz wykonywanie programu, wybierając polecenie, takie jak Kontynuuj lub krok , Edytuj i Kontynuuj automatycznie wprowadza zmiany w kodzie z pewnymi ograniczeniami. Umożliwia to wprowadzanie zmian w kodzie podczas sesji debugowania, zamiast konieczności zatrzymywania, ponownego kompilowania całego programu i ponownego uruchamiania sesji debugowania.

Możesz wyłączyć lub włączyć opcję Edytuj i kontynuuj w oknie dialogowym Opcje programu Visual Studio w czasie projektowania. Edit and Continue działa tylko w kompilacjach debugowania. Aby uzyskać więcej informacji, zobacz Edytuj i Kontynuuj.

W przypadku natywnego języka C++edytuj i kontynuuj wymaga użycia opcji /INCREMENTAL. Aby uzyskać więcej informacji na temat wymagań funkcji w języku C++, zobacz ten wpis w blogu i Edytuj i Kontynuuj (C++).

Włączanie i konfigurowanie przeładowywania na gorąco

Możesz skonfigurować Hot Reload, wybierając Ustawienia z menu rozwijanego Hot Reload.

Zrzut ekranu przedstawiający konfigurowanie przeładowywania na gorąco.

Możesz też otworzyć Tools>Options>Debugowanie>.NET/C++ Hot Reload.

Notatka

Jeśli funkcja IntelliTrace jest włączona i zbierasz zarówno zdarzenia IntelliTrace, jak i informacje o wywołaniu, opcja Edytuj i kontynuuj jest wyłączona. Aby uzyskać więcej informacji, zobacz IntelliTrace.

Ustawienia przeładowywania na gorąco obejmują:

  • Włącz Hot Reload. Włącza przeładowywanie na gorąco podczas rozpoczynania pracy z dołączonym debugerem (F5).

  • włącz ponowne ładowanie na gorąco podczas uruchamiania bez debugowania. Włącza przeładowywanie na gorąco podczas uruchamiania bez dołączonego debugera (Ctrl+F5).

  • Zastosuj przeładowanie na gorąco przy zapisywaniu pliku. Stosuje zmiany kodu podczas zapisywania pliku.

  • Poziom szczegółowości logowania. Filtruje ilość informacji wyświetlanych w oknie wyjściowym Hot Reload.

Zrzut ekranu przedstawiający ustawienia szybkiego przeładowania platformy .NET.

W przypadku funkcji przeładowywania na gorąco w platformie .NET można również kontrolować dostępność tej funkcji na poziomie projektu, modyfikując plik launchSetting.json projektu .NET 6+ i ustawiając hotReloadEnabled na false.

Przykład:

{
  "profiles": {
    "Console": {
      "commandName": "Project",
      "hotReloadEnabled": false
    }
  }
}

W przypadku języka C++można ustawić dodatkowe opcje, otwierając Tools>Options>Debugowanie>Ogólne. Upewnij się, że opcja Włącz Szybkie ładowanie jest zaznaczona i ustaw pozostałe opcje:

  • Stosowanie zmian podczas kontynuacji (tylko dla natywnych)

    W przypadku wybrania programu Visual Studio automatycznie kompiluje i stosuje zmiany kodu po kontynuowaniu debugowania ze stanu przerwania. W przeciwnym razie możesz zastosować zmiany przy użyciu Debug>Zastosuj zmiany w kodzie.

  • Ostrzegaj o nieaktualnym kodzie (tylko dla natywnych)

    W przypadku wybrania polecenia wyświetla ostrzeżenia dotyczące nieaktualnego kodu.

Włączanie lub wyłączanie opcji Edytuj i kontynuuj

  1. Jeśli uczestniczysz w sesji debugowania, zakończ debugowanie (Debug>Zakończ Debugowanie lub Shift+F5).

  2. W Narzędzia>Opcje> (lub Debug>Opcje) >Debugowanie>Ogólne, wybierz Edytuj i Kontynuuj w okienku po prawej stronie.

    Notatka

    Jeśli funkcja IntelliTrace jest włączona i zbierasz zarówno zdarzenia IntelliTrace, jak i informacje o wywołaniach, funkcja Edytuj i Kontynuuj jest wyłączona. Aby uzyskać więcej informacji, zobacz IntelliTrace.

  3. W przypadku kodu C++ upewnij się, że wybrano Włącz edycję natywną i Kontynuuj i ustaw inne opcje:

    • Stosowanie zmian w trybie kontynuacji (tylko natywna)

      W przypadku wybrania programu Visual Studio automatycznie kompiluje i stosuje zmiany kodu po kontynuowaniu debugowania ze stanu przerwania. W przeciwnym razie możesz zastosować zmiany przy użyciu Debug>Zastosuj zmiany w kodzie.

    • Ostrzegaj o nieaktualnym kodzie (tylko natywny)

      W przypadku wybrania polecenia wyświetla ostrzeżenia dotyczące nieaktualnego kodu.

  4. Wybierz pozycję OK.

Zatrzymaj zmiany kodu

Podczas gdy przeładowywanie na gorąco jest w trakcie stosowania zmian kodu, możesz zatrzymać operację.

Podczas gdy funkcja Edytuj i kontynuuj jest w trakcie stosowania zmian kodu, możesz zatrzymać operację.

Ostrożność

Zatrzymywanie zmian kodu w kodzie zarządzanym może spowodować nieoczekiwane wyniki. Stosowanie zmian w kodzie zarządzanym jest zwykle szybkim procesem, dlatego rzadko trzeba zatrzymać zmiany kodu w kodzie zarządzanym.

Aby przestać stosować zmiany kodu:

  • Wybierz Zatrzymaj stosowanie zmian kodu z menu Debug.

    Ten element menu jest widoczny tylko wtedy, gdy są stosowane zmiany kodu.

    Jeśli wybierzesz tę opcję, żaden ze zmian kodu nie zostanie zatwierdzony.