Avatar billede claushelth Nybegynder
14. november 2003 - 23:13 Der er 25 kommentarer og
1 løsning

hvor er ildasm.exe

Jeg er startet på C#, og er igang med at udforske MSIL

Jeg har læst (bøger + msdn) at .net framework skulle have et grafisk værktøtj til at se hvilke metoder og andet meta data der er i ens exe og dll filer. Jeg har kigget i framwork mappen:
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\

efter denne ildasm.exe fil, men den ser ikke ud til at være der. Derimod har jeg en ilasm.exe. Hvis jeg bruger denne får jeg fejl ved:
ilasm c:\cs\test.exe
den skriver at min program fil ikke er en text fil...??

Burde ildasm.exe ikke følge med frameworket, eller skal jeg finde det og installere det?
Avatar billede arne_v Ekspert
14. november 2003 - 23:19 #1
Jeg har den i:

C:\Program Files\Microsoft.NET\SDK\v1.1\Bin
Avatar billede arne_v Ekspert
14. november 2003 - 23:20 #2
Må jeg iøvrigt have lov til at anbefale Anakrino:
  http://www.saurik.com/net/exemplar/
en decideret decompiler !
Avatar billede claushelth Nybegynder
14. november 2003 - 23:23 #3
hmm, altså jeg er lidt grøn her, men mit framework har et andeledes mappehiraki...hvorfor det??
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\

Er det fordi jeg har installeret et forkert framework?...jeg kan godt compile og eksekvere C# applikationer.
Avatar billede claushelth Nybegynder
14. november 2003 - 23:24 #4
jeg har ingenting liggende i program files...kun i kontrol panelet under Administrative Tools
Avatar billede arne_v Ekspert
14. november 2003 - 23:26 #5
Jeg har både C:\WINNT\Microsoft.NET\Framework\v1.1.4322 og
C:\Program Files\Microsoft.NET\SDK\v1.1 !
Avatar billede arne_v Ekspert
14. november 2003 - 23:26 #6
Det første formoder jeg er runtime - det andet SDK.
Avatar billede arne_v Ekspert
14. november 2003 - 23:27 #7
Sammen med ildasm.exe ligger også nmake.exe
Avatar billede claushelth Nybegynder
14. november 2003 - 23:27 #8
ok...kan det være derfor jeg ikke kan...da jeg ikke har noget liggende i program files? Det er da lidt mærkeligt...det er den SDK fra MS's hjemmeside jeg har hentet
Avatar billede arne_v Ekspert
14. november 2003 - 23:29 #9
ditto
Avatar billede claushelth Nybegynder
14. november 2003 - 23:29 #10
hmm det tættteste jeg kan komme på den er ngen.exe
Avatar billede claushelth Nybegynder
14. november 2003 - 23:31 #11
ok..jeg har hentet og pakket den fil ud som du linkede til...skal den lægges i specielt sted. Får en windowsfejl hvis jeg bare dobbeltklikker på exe filen
Avatar billede claushelth Nybegynder
14. november 2003 - 23:32 #12
det ser for mig ud som om jeg skal have installeret Visual Studio før jeg kan benytte dette værktøj....det har jeg ikke!
Avatar billede arne_v Ekspert
14. november 2003 - 23:35 #13
Åben en DOS box og brug:

examplar etelelrandet.exe

og den outputter C# kode !
Avatar billede arne_v Ekspert
14. november 2003 - 23:35 #14
Jeg har kun SDK ikke VS.NET !
Avatar billede arne_v Ekspert
14. november 2003 - 23:40 #15
Den her siger iøvrigt samme dir som det jeg har:

http://www.csharphelp.com/archives/archive23.html
Avatar billede claushelth Nybegynder
14. november 2003 - 23:43 #16
ok..hmm takker, jeg har fået de anakrino til at virke...det skal åbenbart ligge sammen med de filer som skal debuges...lidt ireterende...men det virker.

Kan du ikke sende mig linket til der hvor du har dit SDK fra...da jeg skulle hente det, hentede jeg alt muligt forskeligt fordi jeg ikke anede en dyt om hvad jeg skulle bruge ;)  ...et eller andet sted skulle jeg jo starte..
Avatar billede arne_v Ekspert
14. november 2003 - 23:47 #17
Avatar billede claushelth Nybegynder
14. november 2003 - 23:48 #18
ok...jeg fik løst det med at den ikke skulle ligge i samme mappe som min app..jeg har lavet en batch fil:
C:\Anakrino9\Exemplar.exe c:\cs\%1
Avatar billede claushelth Nybegynder
14. november 2003 - 23:52 #19
ok takker, jeg vil afinstallere min egen og installere denne, og se om det hjælper. Men du har ret i at anakrino er ret så effektiv. Nu er jeg jo lidt af en nybegynder, så her kommer nok et dumt spørgsmål/kommentar.
Sikkerheden i ens filer er da ikke så meget værd hvis man alligevel kan debugge den ned på dette niveau? Jeg kan ikke se hvordan man kan skjule hvordan man har implementeret sine metoder, når denne ugger findes!
Avatar billede arne_v Ekspert
14. november 2003 - 23:55 #20
Det er et meget reelt problem.

Det kan delvist løses ved at bruge en anden type program kaldet
en obfuscator.

Jeg mener at VS.NET kommer med en sådan. Jeg kender ikke nogen gratis
obfuscatorer for .NET.

Problem stillingen har været kendt i Java verdenen i mange år.
Avatar billede claushelth Nybegynder
15. november 2003 - 00:01 #21
ok...så forstår jeg bedre...men det er ikke mærkeligt man bliver forvirret her synes jeg. Jeg har aldrig hørt om dette på skolen (datamatiker haft java og c++). Har altid fået at vide at efter compilering er data informationssikret. Men det er C++ filer måske også? De har jo en headerfil som interface til cpp filen!
Avatar billede arne_v Ekspert
15. november 2003 - 00:06 #22
Det afgørende er ikke sproget men arten af output.

Delphi/C/C++ oversat til native er utroligt svært at decompile (teoretisk
muligt men praktisk uladesiggørligt).

Men Java byte code og MS IL er guf for decompilere !
Avatar billede claushelth Nybegynder
15. november 2003 - 00:09 #23
ok..hehe..jeg vidste der var nogle ulemper ved det...nogle gange er forfatterne blind ulemper ved deres produkter.
Avatar billede arne_v Ekspert
15. november 2003 - 00:10 #24
Det er mit indtryk at de her ting er realtivt nye i .NET, men de har som sagt
været kendt i Java i en del år.

Jeg ved ikke hvorfor dine lærere ikke har bragt emnet på bane. De har vel
prioriteret andre emner.
Avatar billede claushelth Nybegynder
15. november 2003 - 00:11 #25
jeg takker mange gange for den store hjælp...jeg vil forsøge at reinstall sdk, og se om det hjælper på mit ildasm problem.

og tak for kommentarene, de opklarede en del for mig :)
Avatar billede arne_v Ekspert
15. november 2003 - 00:13 #26
Man kan næsten sige sig selv at det må være sådan.

En af de interessante sider af .NET er at du kan arve på tværs
af sprog: en klasse skrevet i VB.NET kan arve fra en klasse skrevet
i C#.

Det kan jo kun lade sig gøre hvis output indeholder en beskrivelse
af klassen.

Den beskrivelse har en decompiler jo også adgang til.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester