.netin alla on monia dekompilointityökaluja: dnspy, Reflector, ILSpy jne
Voit suoraan debugata käännetyn .exe-ohjelman, tarkastella arvoja muistissa ja jopa muokata lähdekoodia suoraan.
Miten ohjelmamme siis havaitsee, että sitä debuggataan tai dekompaoidaan?
Kun sovellus käynnistyy normaalisti, käyttäjä yleensä kaksoisklikkaa sovellusta käynnistääkseen, ja sen vanhempi prosessi on "explorer", meidän tarvitsee vain tarkistaa, onko vanhemman prosessin käynnistys oikein.
Eri arvot, jotka saadaan kaksoisklikkaamalla käynnistääksesi, cmd start ja dotnet start, on esitetty alla olevassa kuvassa:
Jos emoprosessin nimi ei ole Explorer, ohjelma sulkeutuu.
.NET Coren täytyy asentaa seuraava paketti, komento on seuraava:
Koodi on seuraava:
|