31 Ocak 2016 Pazar

Delphi'de WebService Part-2 (Service Yayınlama)

WebService Yayınlama


       Oluşturulan webservice dll'inin kulllanılabilmesi için öncelikle web ortamında yayınlanması gerekmektedir. Bunun için IIS üzerinde statik bir web adresi gerekmektedir. Verilecek örnekte bu iş için localhost kullanılmıştır. Eğer bilgisayarınızda IIS yoksa buradan indirebilirsiniz.

      Bu örnek Default Web Site'si üzerinden anlatılacaktır. Giriş ekranı aşağıdaki gibidir. Öncelikle yapılması gerekenler

1. IIS klasörünü belirlemek(DLL'in çalışacağı klasör yolu)
2. IIS'in .dll ve .exe uzantılarınıda çalıştırması için izinleri vermek

1. Dosya Klasörünü Ayarlama


       Eylemler menusünden Temel Ayarlar kısmına tıklayınız. Burada Site Adı, Uygulama Havuzu ve Fiziksel Yol gibi bilgileri düzenleyebilirsiniz. Fiziksel yolu DLL'in bulunduğu klasör seçin yada kendi oluşturduğunuz bir klasörün içine DLL'i atın ve bu dosya yolunu seçin


2. Gerekli İzinlerin Verilmesi

       DLL klasör yolu belirlendikten sonra yapılması gereken diğer bir işlem de bu DLL'nin çalışması için gereken izinlerdir. Öncelikle 32 bit(x86)  uygulamalarında çalışması için Uygulama Havuzları > DefaultAppPool (Siz hangi havuzu seçtiyseniz) > Gelişmiş Ayarlar > Genel > 32-Bit Uygulamaları Etkinleştir = True adımlarını takip etmelisiniz. Bu işlemden sonra artık 32 bit uygulamalarda IIS de çalışacaktır.


      Bir diğer onayda DLL ve Exe lerin çalışması için etkinleştirilmesi gereken bölümlerdir. Bunun için HOST>İşleyici Eşleşmeleri > CGI-exe > Çalıştır diyerek exeleri çalıştırabilir hale getiriniz.









  Son olarak tek bir etkinleştirme işlemi kaldı. HOST>ISAPI ve CGI Kısıtlamaları>Özellik Ayarlarını Düzenle>Tamam


Tarayıcıya localhost yazarak DLL'in çalıştığını test edelim


Delphi'de WebService Part-1 (Server Oluşturma)



Web Servis Nedir Nerelerde Kullanılır ?


Web Servis web üzerinden HTTP protokolü ile hizmet veren program parçalarıdır. Bir kullanıcının HTTP üzerinden bir web servisi kullanmasına RPC(Remote Procedure Call) denmektedir HTPP üzerinden yapılan bu çağrımlara karşı SOAP(Simple Obect Access Protocol) dediğimiz protokol XML çıktıları üretir. Veri transferi bu XML çıktıları sayesinde yapıldığı için platform bağımsız bir yapısı vardır. Web servisi kullanmak istediğiniz program parçasının hangi dilde yazıldığının pek bir önemi yoktur.Çünkü sonuçta Web servisten alacağınız veri tipi XML'dir.Bundan dolayı C# ile yazılmış bir Web Servis Java tarafından Java ile yazılan bir Web Servis .Net teknolojileri tarafından kolayca kullanılabilmektedir.Bu yazılımların çalıştıkları platformalarında pek önemi yoktur Unix üzerinde çalışan bir uygulamayla Windows üzerinde çalışan bir uygulama aynı Web Servisi sorunsuzca kullanabilirler.  

7 Aralık 2015 Pazartesi

17 Kasım 2015 Salı

14 Kasım 2015 Cumartesi

Delphi 7 - Help Dosyası Oluşturma ve Kullanma Demo



  Hemen hemen bütün uygulamalarda F1 tuşuna basarak gördüğümüz helpin nasıl yapıldığını örnek resimlerle anlatacağım. Öncelikle bir chm uzantılı örnek bir help dosyasına ihtiyacımız var. Bunun için Microsoftun kendi uygulaması olan HTML Help WorkShop uygulamasını indirip kullanabilirsiniz. Ben bu örnekte tek kullanıcılar için bedava olan HelpNDoc uygulamasını kullandım.

 Öncelikle uygulamayı web sitesinden indirerek kurun. Uygulama basit bir arayüz ile geldiği için kullanmakta pek zorlanmayacaksınızdır. Daha sonrasında uygulamanız hakkında bilgileri girerek yardım dosyanızı oluşturun ve generate ile chm uzantılı dosyanızı oluşturun.

Artık bir help dosyanız var. Oluşturduğunuz help dosyasını exe klasörünüzün içine koyun. Delphi 7 de HTMLHelpViewer kütüpanesi olmadığı için internetten bulduğum kütüphaneyi dosyaya ekledim. Sizde bu unit dosyanızı projenize ekleyerek kullanabilirsiniz.


 Daha sonrasın da formunuza bir tane
 ApplicationEvents Bileşeni yerleştirin ve OnHelp olayına şu kodları yazın.

 CallHelp := False;
  Result := True;
  //argh, WinHelp commands
  case Command of
  HELP_CONTEXT,HELP_CONTEXTPOPUP:
    HtmlHelp(GetDesktopWindow, PChar(Application.HelpFile), HH_HELP_CONTEXT, Data);
  end;


Form KeyDown Olayınada F1 Tuşunu atayarak Help dosyamızı çağırabiliriz.

https://yadi.sk/d/EoAF8kmxkTdDs

19 Ekim 2015 Pazartesi

Olay Yönlendirme Demo

   Var olan bileşen olaylarını bozmadan sahip olduğunuz bileşene o bileşenin olayıı çalışmadan yada çalıştıktan sonra kendi olayınızı göme bilirsiniz. Sadece var olan bileşenin adres bilgisini tutarak önce kendi olayınız sonrada adres bilgisini tuttuğunuz olayı tetiklemeniz yeterli.

16 Ekim 2015 Cuma

8 Nisan 2015 Çarşamba

16 Mart 2015 Pazartesi

7 Mart 2015 Cumartesi

14 Haziran 2014 Cumartesi

Delphi 7- ADO Conn ile SQL Tablolarını TreeView'de Gösterme

    Bazı projelerinizde SQL Tabloları ile işlemler yapmak isteyebilirsiniz.SQL tabloları ile çalışma yapmak isteyenler için güzel bir örnek olacağını düşünüyorum. Fracois Pitte abimizin yaptığı uygulamayı delphi 7 için tekrar derledim ve size sunuyorum.