Sınıf kitaplığı çözümünü kaybettim, .dll
ile oluşturulan dosyayı açabilir miyim class-library
?
Sınıf kitaplığı çözümünü kaybettim, .dll
ile oluşturulan dosyayı açabilir miyim class-library
?
Yanıtlar:
redgates .net reflektör veya jetbrains resharper çözücü gibi bir derleyici ile daha iyi durumda olursunuz. açık kaynak kodlu olanlar da var
Aşağıdaki adımları izleyin ..
ILDASM.EXE
ENTER tuşuna basın. ILDASM
penceresi açılacaktır Dosyayı klasörünüzden .dll
pencereye sürükleyin veya tıklayın. Ardından File->New
Gerekli .dll
dosyayı ekleyin . .dll
dosya görünecektir. Ne içerdiğini görmek için bu dosyalara çift tıklayın. has no valid CLR header and cannot be disassembled
.
.NET Reflector & bu FileGenerator eklentisini http://filegenreflector.codeplex.com/ indirdiğinizi düşünüyorum, eğer indirdiyseniz ,
Reflector.exe dosyasını açın,
Görüntüle'ye gidin ve Eklentiler'i tıklayın,
Eklentiler penceresinde Ekle ... 'yi tıklayın,
Ardından indirdiğiniz dll'yi bulun
FileGenerator.dll (cadı FileGenerator eklentisi ile geldi),
Ardından Eklentiler penceresini kapatın.
Dosyaya gidin ve Aç'a tıklayın ve derlemek istediğiniz dll'yi seçin,
Açtıktan sonra ağaç görünümünde belirecek,
Araçlara gidin ve Dosya Oluştur'a (Crtl + Shift + G) tıklayın,
çıktı dizinini seçin ve istediğiniz gibi uygun ayarları seçin, Dosyaları oluştur'a tıklayın.
VEYA
http://ilspy.net/ kullanın
Tam kodu alamazsınız, ancak onun derlenmiş bir versiyonunu alabilirsiniz.
En popüler (ve en iyi) araç Reflector'dur , ancak başka .Net çözücüler de vardır ( Dis # gibi ).
Ayrıca , .Net Framework SDK Araçları ile birlikte gelen ILDASM'yi kullanarak IL'yi de derleyebilirsiniz .
.dll
Visual Studio ile dosyayı açın . Veya kaynak düzenleyici.
There is no editor available for (file I tried to open). Make sure the application for the file type (.dll) is installed.
Telerik's Just Decompile, kullandığım en iyisi. Bir e-postayla kaydolduktan sonra ücretsizdir.
Jetbrains Dot peek Yazılımını kullanıyorum, siz de deneyebilirsiniz
* .dll dosyaları, winzip / 7zip vb. ile açık olan arşiv dosyalarıdır. Bu, tüm .dll dosyalarının arşiv olduğunu söylemek değildir. > Bir arşiv dosyası olan twain_32.dll, ancak twain.dll dosyası değildir, eğer twain.dll dosyasına bakarsanız, bir Derlenmiş C dosyası / programı veya bir programın parçası olan ilk üç not defteri karakteri olarak bir MZŽ görürsünüz. Oysa MZ bir arşiv gibi görünüyor.
Ayrıca çoğu .exe dosyası, çoğunlukla dosya için bir simge görüntüsü vb. İçeren arşivlerdir ve Windows yükleyici paketleri ayrıca programın görüntüleri, filmleri vb. Çalıştırmak için ihtiyaç duyduğu tüm bilgileri ve ayrıca kurulum bilgileri ve düz metin dosyası dahil dizinleri içerir.
Burada game.exe adlı bir oyunum var ve java sınıfı dosyaları ve .exe'yi .bat dosyasını çalıştırmak için yönlendiren bir işaretçi görüntü içeriyor. Açıkçası .bat dosyanız arşivden bir javac çağrısı çalıştıracak ve oyunu çalıştıracak, ayrıca java sınıfı dosyalarını içeren birkaç .dll arşivi de var.
[autorun]
ICON=AUTORUN\MINCRAFTLOGO.ICO
burada standart simge yeniden yönlendir .ico, bir .exe dosyası içinde bir .dll dosyası içinde bir görüntü dosyasıdır. Yani .exe dosyasında görülen resim minecraft logosudur. Bu, autorun.inf adlı bir dosyadadır. İkinci örnek
[discstarter]
startpage=Autostart\Disk1.html
uselanguagestartpage=1
windowcaption=Solid Edge
licensee=Siemens PLM Software
productguid=05B227DF-DB00-4934-B3C8-40B7D8FAA54A
singleinstance=1
hidesplashscreen=1
noscrollbars=0
showstatusbar=1
splashscreentime=0
windowwidth=750
windowheight=775
buttondir=Autostart
toolbarcolor=16777215
toolbar=goback,goforward,gohome,print,exit
[autorun]
open=autostart.exe
icon=Autostart\ENGINE.ICO
Bu, solidedge.exe Autostart \ 'de bulunan sağlam kenarlı autorun.inf dosyası, Autostart.dll dizinidir. open = autostart.exe, orijinal solidedge.exe arşivinden çalıştırılacak autostart.exe dosyasını belirtir. Burada .dll (dinamik bağlantı kitaplığı) dosyalarını http://www.flipcode.com/archives/Creating_And_Using_DLLs.shtml kullanan örnek bir program verilmiştir .
Aynı zamanda nasıl yaratıldıklarını da gösterir. Gördüğünüz gibi dll dosyasının içeriği daha önce açıkladığım gibi bir exe dosyası tarafından çağrılıyor ayrıca burada bir öğretici var http://msdn.microsoft.com/en-us/library/ms235636.aspx ve daha önce de söylediğim gibi 7zip veya winzip, .dll dosyasına sahip olduğunuz sürece bir dinamik bağlantı kitaplığını bir arşiv olarak açacaktır. Dinamik bağlantı kitaplığının içeriği derlenmişse, açıkça dosyayı okuyabilen bir programa ihtiyacınız vardır.
Ancak .dll dosyaları tanım gereği sadece arşiv kütüphanesi dosyaları olduğundan, dll'nin kendisi okunabilir olmalı ve derlenmiş bir C, C # dosyası vb. Olmamalıdır. oluşturulur ve dll dosyasında sakladığınız tüm bilgiler şifrelenir. Çoğunlukla bu şifreleme, görsel stüdyo tarafından ele alınır ve genellikle elle düzenlenmez. Bir .dll dosyası içeriğini .exe olarak okuduğunuzda, içeriğin şifresi otomatik olarak çözülür. Şimdi bir programı derlemekten bahsettiğimizde, içeriği makinenin kolayca yorumlayacağı bayt koduna dönüştürüyoruz.
Bu dosya boyutu, aynı içeriğin orijinal dosyasından daha küçük olacaktır. Ancak dosya boyutu daha büyüktür ve dosyanın gerçekten şifrelenmiş olduğunu gösterir. Muhtemelen insanların kodlarını okumasını engellemek için. Sonuç olarak, .dll içeriklerinin okunması, kod çözme olarak adlandırılır ve derlemeyi çözme olarak adlandırılır. Derlemenin çözülmesi, önceden derlenmiş txt dosyalarını okunamayan bayt koduna dönüştürür. Standart .dll dosyalarının kullanımı, bayt kodunun kasıtlı olarak gizlenmesini içerdiğinden, tanım gereği açık kaynak değildir.