19 Ağustos 2015 Çarşamba

PInvoke Hatalarını Debug Etmek

DLL'leri PInvoke ile kullanmak istediğinizde,eğer LoadLibrary windows apisi ile DLL belleğe yüklenmiyorsa, veya diğer invoke işlemlerinde problemler varsa;

"GetLastError function" ile hata kodu ve detay mesajları incelenmelidir.

"Dependency Walker" ve "Process Monitor" gibi araçlarla,
DLL'in diğer başka DLL'lere bağımlılıklarını ve diğer (registry,file system,network vs) etkileşimini izleyip,sonuçlara (Result) göre problemleri tespit edebilmek mümkündür.


Örneğin Visual C++ da geliştirmiş olduğum, bir Win32 DLL içersinde ki fonksiyonları
çağırmak istediğimde ,LoadLibrary apisi ile DLL yükleme işlemi başarısız olmaktaydı.



"Dependency Walker" ile DLL'in bağımlı olduğu diğer DLL'leri ilgili "path"lere kopyalayarak çözmek mümkündür.



MSVCR120.dll dosyasını temin etmek için,"Visual C++ Redistributable Packages for Visual Studio 2013" indirip kurmak yeterlidir.


30 Temmuz 2015 Perşembe

Azure Üzerinde Asp.net MVC Proje Yayınlamak

Windows azure üzerinde asp.net mvc projesi yayınlamak için,
daha önceden Microsoft Azure -> "Web Apps" kısmından bir uygulama oluşturmuş olmak gerekiyor.

Projeyi sunucuya yüklemek için birkaç alternatif yöntem bulunmakta.

1. (Publish Profile) Dosyası İle Yükleme.
 a- Ekran görüntüsünde görüleceği üzere,publish profile dosyası bilgisayara indirilir.

 b- "Import" menüsüne tıklanır ve indirilen "publish profile" dosyası seçilir,devam edilir.





c- Gelen ekran bilgiler kontrol edilir."Validate Connection" ile bağlanılabilirlik test edilir.


 d- Publish düğmesi ile proje yüklenir.


2. Oturum Açarak Proje Yükleme.
  a- "Microsoft Azure WebSites" düğmesi tıklanır.

  b- Sign In Düğmesi tıklanır.


  c- Microsoft hesabı ile oturum açılır.

  d- Oturum açma işlemi bittğinde,"Existing WebSites" kısmında azure'de ki mevcut uygulamalar gelir.
       Hangisine yüklenmek isteniyorsa,seçilerek işleme devam edilir.

  e- Gelen ekran bilgiler kontrol edilir."Validate Connection" ile bağlanılabilirlik test edilir.
   

f- Publish düğmesi ile proje yüklenir.
Diğer ftp vs yöntemleri isterseniz deneyebilirsiniz.

Test Asp.net Ext.Net MVC uygulaması.
http://extnetmvc.azurewebsites.net

Ekim sonuna kadar test edebilirsiniz...
Çünkü azure deneme süresi bitiyor :D