16 Şubat 2015 Pazartesi

[.Net Framework] Kullandığım decompiler ve obfuscator

.Net Framework uygulamalarını geliştirme sırasında compile edilen dll dosyalarını incelemek için ve bu dosyaları karıştırmak için şu anda aşağıdaki uygulamaları kullanıyorum :

Decompiler : ILSpy
Obfuscator : ConfuserEx


Oracle "The specified store provider cannot be found in the configuration, or is not valid.” hatası ve çözümü

.Net framework ile ODAC üzerinden Oracle veri tabanına kayıt sırasında aşağıdaki gibi hata almıştım :

System.ArgumentException: The specified store provider cannot be found in the configuration, or is not valid. ---> System.ArgumentException: Unable to find the requested .Net Framework Data Provider.  It may not be installed.
   at System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName)
   at System.Data.EntityClient.EntityConnection.GetFactory(String providerString)

Üstelik bu hata, uygulama 32 bit olarak çalıştırıldığında alınmamasına rağmen 64 bit kullanılırken alınıyordu.

Bunun nedeni olarak, yüklü ODAC'ın .Net framework'e ait 32 bit machine.config dosyası üzerinde değişiklik yapmasına rağmen, 64 bit için olan machine.config dosyası üzerinde ilgili değişiklikleri yapmıyor olması.

Çözüm için 64 bit machine.config dosyası içerisine oracle managed data access provider ile ilgili satır eklenebilir.

Daha kolay olan ise, ODAC'ın 64bit versiyonunun yeniden makineye kurulması.
--
Kurulumu live makine üzerinde yapmıştık ve ODAC versiyonu 11'den 12'ye yükselmişti. Makine üzerinde çalışan çok fazla uygulama olmadığından bir problemle karşılaşmadık.

ODAC dizini içerisinde doğrudan bir değişikliğe gitmemişseniz kurulum bir problem yaratmayacaktır. Yalnız TNS bilgilerinin bir yere kopyalanması unutulmamalı.

ILMerge kullanımı

Bilgisayarda environment veriables'a ILMerge'ün uygulama yolunu eklemeyi sürekli olarak unuttuğumdan, doğrudan kopyala yapıştır yapmalık örnek komut kullanımını buraya koyuyorum.

"C:\Program Files (x86)\Microsoft\ILMerge\ilmerge" "in1.dll" "in2.dll" "in3.dll" /out:"cikti.dll"

Environment variables'a eklemiş olsaydım bu komut aşağıdaki gibi kullanılacaktı :
ilmerge "in1.dll" "in2.dll" "in3.dll" /out:"cikti.dll"

Related Posts Plugin for WordPress, Blogger...