Forumdaki bir soru üzerinde uçsuz bucaksız yazılım dünyasında kendim için bir ilki daha tecrübe etmiş bulundum, ve makale halinde paylaşmak istedim.
Bu yazıda , basit bir ActiveX kitaplığı oluşturup bu kitaplığa basit bir sınıf tanımlayıp bu sınıfada basit bir metod tanımlayacağız ve basit bir ASP sayfasında kitaplığı test edeceğiz özetle herşey çok basit olucak

Evet, Delphi7 ortamında File-->New-->Other menüsünden ActiveX sekmesine ulaşıp yeni bir ActiveX Library projesi oluşturalım.

Sonra projemizi MyAXObject adımda kaydedelim, activex kitaplığımız hazır şimdi buna sınıf yaratabileceğimiz bir Active Server Object tanımlayalım bunun için, File-->New--Other menü adımlarından ActiveX sekmesine ulaşın ve Active Server Object seçeneğini seçin.

OK tuşuna baştığımızda oluşturacağımız ActiveX Server Object hakkında bir takım ön bilgiler istenecektir, aşağıdaki şekildeki gibi dolduralım.

Sınıfımızın adını MyAXClass koyduk, bu ekrana da OK dediğimizde aslında işimizin büyük bir kısmını hallettik ve Type Library ekranıyla karşılaştık.

Bu ekran Active Server Object ini kolayca yönetmemizi sağlayan kullanışlı bir editör olarak karşımıza çıkar, şimdi dikkat ettiyseniz MyAXClass sınıfımızı temsil eden MyAXClass ve onu işaret eden IMyAXClass arabirimi tanımlarının yer aldığını görürüz, biz tüm metod tanımlama işlemlerimizi IMyAXClass arabirimine yapacağız o bizim için gerekli sınıf tanımlamalarını yapacak, IMyAXClass ı seçelim ve yeşil simgeli tuşa tıklayalım bu sayede sınıfa yeni bir metod oluşturmaya başlamış olduk (Mavi simge seçilen sınıfa yeni bir özellik (property) ekler).

Metoda MyAXTestMetod adını verelim ve sağ taraftan şekildeki gibi Parameters sekmesine geçelim, burada sadece giriş parametreleri değil çıkış parametreleride tanımlanır ve örnek metodumuzda giriş parametresi kullanmayacağız geriye String dönen basit bir metod olacak bizim metodumuz, şekildeki gibi "bos" adında BSTR * tipinde OUT + RETVAL tanımlamasına sahip bir parametre tanımlıyoruz, buradaki OUT ve RETVAL seçenekleri bu parametrenin bir çıkış parametresi olduğunu belirtir. Return tye olarakta HRESULT belirtiyoruz ve projemizi kaydediyoruz, kayıt işlemini yapar yapmaz delphi bizim için metod tanımlamalarını yapıyor bize sadece metodumuzu doldurmak kalıyor,

Kod: Tümünü seç
function TMyAXClass.MyAXTestMetod: WideString;
begin
Result:='ilk ActiveX nesnemizden selamlar.. :)';
end;
Kod: Tümünü seç
<HTML>
<BODY>
<TITLE> Testing Delphi ASP </TITLE>
<CENTER>
<H3> You should see the results of your Delphi Active Server method below </H3>
</CENTER>
<HR>
<% Set DelphiASPObj = Server.CreateObject("MyAXObject.MyAXClass")
Response.Write DelphiASPObj.MyAXTestMetod
%>
<HR>
</BODY>
</HTML>
Artık herşey hazır, browserdan sayfamızın URL sini yazalım ve emeğimizin karşılığını gözlemleyelim.

Proje dosyası http://rapidshare.com/files/66503694/Ar ... Object.zip
İyi çalışmalar.