| |||||||||||
Anasayfa | Toplu SMS | Web Hosting | Makale Ara | Anketler | Sitene Ekle | RSS Kaynağı | |||||||||||
AramaEn Çok Okunan Makaleler |
ILDASM ve SuppressIldasmAttributeILDASM ve SuppressIldasmAttribute
ILDASM ve SuppressIldasmAttributeMSIL disassembler (ILDASM) aracı, .NET platformu üzerinde geliştirmiş olduğunuz DLL ve EXE assembly'lerinin içindeki kodları gösteren bir uygulamadır. Bu araç, sadece kodları değil, bir assembly içindeki namespace'leri ve tipleri de gösterir. ILDASM aracı, .NET SDK ile birlikte gelmektedir. Ayrıca, VS.NET kurulumundan sonra da VS.NET komut satırından ILDASM.EXE'yi çalıştırabilirsiniz. Pek çok faydası olan bu aracın varlığı, pek çok kişi için "kodların çalınabileceği" bir ortam yaratmaktadır ve ILDASM içinde assembly'lerin görüntülenmesinin nasıl engellenebileceği araştırılmaktadır. .NET 2.0 ve sonrasında, bir assembly'nin ILDASM aracı içinden açılmasını engelleyen bir "attribute" vardır. SuppressIldasmAttribute kullanılarak, bir namespace, class ya da metodun ILDASM içinde görülmesini engelleyebilirsiniz. Örneğin, bir VS.NET içinde windows forms projemiz olsun: using System; using System.Windows.Forms; namespace ILDASM_Test { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { MessageBox.Show("Test"); } } } using System; using System.Windows.Forms; using System.Runtime.CompilerServices; [assembly: SuppressIldasmAttribute()] namespace ILDASM_Test { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { MessageBox.Show("Test"); } } } Farkedebileceğiniz gibi, [assembly: SuppressIldasmAttribute()] kullanıyoruz. Bunu kullanabilmemiz için, namespace olarak System.Runtime.CompilerServices servisini de kullanmamız gerekmekte. Bu işlemlerden sonra derlediğimiz kodu tekrar ILDASM içinde açmaya çalıştığımız zaman karşımıza, bu assembly’nin korunan bir assembly olduğunu ve ILDASM içinde açılamayacağını belirten bir mesaj çıkacaktır. Geçerli olduğu platformlar: .NET 2.0 ve sonrası. Kaynaklar: MSIL Disassembler (Ildasm.exe) http://msdn2.microsoft.com/en-us/library/f7dy01k1(VS.80).aspx SuppressIldasmAttribute Class Attribute Class http://msdn2.microsoft.com/en-us/library/system.attribute(VS.80).aspx Lutz Roeder’s .NET Reflector http://www.aisto.com/roeder/dotnet/ Getting Started With Dotfuscator http://msdn2.microsoft.com/en-us/library/ms227276(VS.80).aspx
Yazdırılabilir Sayfa |
Word'e Aktar |
Tavsiye Et
| Yorum Yaz
|
Seçtiklerimiz |
|||||||||
|
© 2004-2009 Tüm Hakları Saklıdır AltınSoft Bilişim Teknolojileri Altyapı: MyDesign Haber Sistemi |
|||||||||||