Czasami ślęcząc nad kodem i analizując przyczynę błędu mamy potrzebę jego zmiany w tym miejscu gdzie jesteśmy. Kiedyś (dawno dawno temu) nie było lekko. Trzeba było przerwać debugowanie, wprowadzić zmianę w edytorze, zbudować, uruchomić i przejść do tego samego miejsca gdzie byliśmy poprzednio. Nie brzmi tak źle, ale ten ostatni etap czasem mógł być utrapieniem.
Aby ten proces usprawnić VS miało dostępną opcję Edit & Continue. Wystarczyło zmienić kod, odczekać chwilę i już można było debugować dalej. Niestety przy próbie edycji kod 64bitowego dotychczas raczył nas poniższy obrazek:
W najnowszym VS możemy spokojnie edytować kod aplikacji kompilowanej na 64 bity. Z drugiej strony warto wiedzieć, że można tę opcję wyłączyć w ustawieniach, aby przypadkowo nie zmodyfikować kodu, który uruchamiamy. Możemy to zrobić odhaczając opcję Enable Edit and Continue w Options-Debugging->Edit and Continue.
Przy okazji szkoda, że nie ma więcej informacji jak to jest rozwiązane z uwzględnieniem low-level stuff. Można się tylko domyślać, że działa ono na zasadzie patchowania naszej funkcji w locie i zastępowanie JiT-niętej funkcji na jej nową wersję.
Founder of Octal Solutions a .NET software house.
Passionate dev, blogger, occasionally speaker, one of the leaders of Wroc.NET user group. Microsoft MVP. Podcaster – Ostrapila.pl