13 Ağustos 2017 Pazar

18 Nisan 2016 Pazartesi

Delphi'de WebService Part-3(Service'i Kullanma)


  İlk iki kısımda server ve client kısımlarını oluşturmuştuk şimdi server kısmına kullanıcı girişi kontrolü ekleyerek client kısmında da bu methodun çağrımını yaparak örnek bir kullanım yapalım. Bunun için önce server yani dll kısmına kullanıcı girişi fonksiyonumuzu yazalım. Fonksiyonları kullanabilmemiz için öncelikle interface kısmında fonksiyonumuzu yazmamız gerekmekte.

   Interface'de tanımladığımız fonksiyonu şimdide impemente ederek asıl yapılacak iş kısmınız yazmamız lazım.


   Bu işlemden sonra servisi IIS'de yayınlayıp client kısmından çağırımını yapabiliriz. Client kısmına gereçerek önce servisimizi cliente importlama işlemini yapıyoruz.









  İmportladıktan sonra uygun bir isimde servisimizi kaydediyoruz.


  Şimdi servisi kullanmak istediğimiz forma referans göstererek kullanabiliriz. Ana forma referans olarak ekliyoruz.





Forma bir buton koyup test edelim.




Test başarı ile gerçekleştirildi.

21 Mart 2016 Pazartesi

Küçük Kod Defteri


Delphi kodlarınızı dosyalamak için küçük bir uygulama. Kaynak kodları ile birlikte aşağıdaki linkten inceleyebilir yada direk kurulumunu indirip deneyebilirsiniz. Bileşen olarak delphinin kendi bileşenlerini kullandım. Üçüncü parti bileşen olarak ücretsiz bileşen SynEdit kullandım.

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

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.  

27 Nisan 2014 Pazar

Delphi 7 - Veri Tabanından ClipBoarda Veri Kopyalama


      Bazen Veritabanın'dan bilgileri Excel gibi yerlere kopyalamak isteyebiliriz. Bunun için Giridlerin hali hazırda zaten bu özellikleri mevcuttur. İstediğiniz gibi bu özelliğini açıp kapayabilirsiniz. Fakat bazen kopyalamak istediğiniz şeyler biraz kompleks olmaya başlayınca hangi verilerin ClipBoarda kopyalanacağını kontrol etmek isteyebilirsiniz.

23 Şubat 2014 Pazar

Delphi XE5 - Firebird Veritabanı Oluşturma


   Piyasa da bilindiği gibi bir çok veritabanı uygulaması var. Firebird ' de bunlardan birtanesi. Fakat FireBird' ü diğerlerinden ayıran en önemli özelliği boyutun çok küçük, işlevinin ise devasa olması. Bu yüzden bir çok uygulama geliştiricisi FireBird veritabanını tercih etmekte. Bu yazıda size FireBird nasıl indirilir ve Delphi FireBird yapılandırmasını anlatacağım.

22 Şubat 2014 Cumartesi