Alfabetik Sıralama :ABCDEFGHIJKLMNOPQRSTUVWXYZ -


Kodlarımızı DLL haline getirmek için elimizde iki şeyin olması kâfi. Birincisi bir metin editörü (notepad bile yeter) ikincisi ise Visual Basic 6.0. Malzemelerimiz hazırsa tarifimize geçelim. Öncelikle basit bir ASP sayfası oluşturalım. Benim örneğim altta, siz kafanıza göre birşeyler karalayabilirsiniz.

<%
Response.Write "<html><head><title>ASP kodlarını DLL üzerinden çalıştırma denemesi</title>"
Response.Write "</head><body><font color=""#FF0000"" size=2 face=""trebuchet ms"">"
Response.Write "Bu sayfa bir DLL dosyasından türetilmiştir.</font></body></html>"
%>

Bu sayfamıza herhangi bir isim vererek şimdilik bir kenara kaydedelim. Bu haliyle kullanmayacağız ama yine de baştan hazırlayalım dedim. Şimdi Visual Basic programımızı DLL oluşturacak şekilde açalım. Bunun için izlememiz gereken yol şöyle:

  1. Visual Basic programını açıp File menüsünden New´i tıklayın.
  2. Açılan pencereden ActiveX DLL seçeneğini işaretleyip OK´a tıklayın.
  3. Projemize ASP nesnelerini eklemek için Project menüsünden References seçeneğine tıklayın.
  4. Açılan pencereden Microsoft Active Server Pages Object Library´i bulup işaretleyin ve OK´a tıklayın.

Projemize bu şekilde ASP desteğini eklemiş olduk. Şimdi sıra geldi kodlarımızı kişiselleştirmeye. Bu aşamada istersek kodları kendi dilimize bile çevirebiliriz. (Ben biraz denedim ama sanırım pek uymadı :))

´Buradaki Türkçe isimler tamamen sizin inisiyatifinize kalmış.
Private Baglam As ScriptingContext
Private Uygulama As Application
Private Istek As Request
Private Cevap As Response
Private Sunucu As Server
Private Oturum As Session

Public Sub OnStartPage(PassedScriptingContext As ScriptingContext)
    Set Baglam = PassedScriptingContext
    Set Uygulama = Baglam.Application
    Set Istek = Baglam.Request
    Set Cevap = Baglam.Response
    Set Sunucu = Baglam.Server
    Set Oturum = Baglam.Session
End Sub

Public Sub OnEndPage()
    Set Baglam = Nothing
    Set Uygulama = Nothing
    Set Istek = Nothing
    Set Cevap = Nothing
    Set Sunucu = Nothing
    Set Oturum = Nothing
End Sub

Kodlarımızı yazdıktan sonra projemize ve sınıfımıza birer isim verelim. Bu kısım önemlidir çünkü örnek sayfamızı çalıştırdığımızda oluşturduğumuz bu DLL dosyasını kullanabilmek için nesne oluştururken bu isimler kullanılır (ProjeAdı.SınıfAdı). Bu yazımda ben proje adımı "ASPden", sınıf adımı ise "DLLye" olarak belirledim. Bunların ne olacağı tamamen size kalmış. Önce projemize bir isim verelim ve tekrar Project menüsüne dönelim ve Project1 Properties menüsüne tıklayalım. (Eğer buraya gelmeden önce projenizin ismini değiştirdiyseniz sorun yok ama buna rağmen tekrar değiştirmek isterseniz bu menü "ProjenizinAdı Properties" olarak görünür.)

Açılan pencereden Project Name kutucuğuna istediğimiz ismi yazıyoruz (Ben ASPden demiştim.) ve Tamam´a tıklıyoruz. Projemizin artık bir adı var. Şimdi sıra sınıfımızı adlandırmaya geldi. Bunun için çalışma sayfamıza geri dönüyoruz ve sağ tarafta Properties - Class1 başlıklı pencereyi buluyoruz. (Eğer buraya gelmeden de sınıfınızın ismini değiştirdiyseniz ve yine de değiştirmek isterseniz bu pencerenin başlığı Properties - Sınıfınızın Adı olarak görünecektir.) Eğer bu pencereyi göremiyorsanız View menüsünden Properties Window seçeneğini tıklayın veya direkt olarak F4 tuşuna basın. Bu pencerede görüntülenen özelliklerden Name yazanın karşısına tıklayıp istediğimiz ismi yazalım. (Ben DLLye yazmıştım.) DLL dosyamız kısmen bitti ama işin en civcivli kısmına geldik: DLL dosyamıza kendi ASP kodlarımızı ekleyeceğiz.

Bunun için yazının başında hazırladığımız ASP dosyamızı açalım. Bir iki ufak değişiklikten sonra bu kodları az önce oluşturduğumuz kodlarla birleştirerek işlemimizi tamamlayacağız. Yukarıdaki kodlarda ASP´nin Response nesnesinin adını ben Cevap olarak değiştirmiştim. Bu nedenle ilk oluşturduğumuz ASP dosyamızdaki Response yazan yerleri Cevap olarak değiştireceğiz ve Deneme isimli bir fonksiyona ekleyeceğiz:

Public Sub Deneme()
    Cevap.Write "<html><head><title>ASP kodlarını DLL üzerinden çalıştırma denemesi</title>"
    Cevap.Write "</head><body><font color=""#FF0000"" size=2 face=""trebuchet ms"">"
    Cevap.Write "Bu sayfa bir DLL dosyasından türetilmiştir.</font></body></html>"
End Sub

Son olarak kafalar karışmadan tüm kodları birleştirerek pişirmek için fırına verelim:

´Buradaki Türkçe isimler tamamen sizin inisiyatifinize kalmış.
Private Baglam As ScriptingContext
Private Uygulama As Application
Private Istek As Request
Private Cevap As Response
Private Sunucu As Server
Private Oturum As Session

Public Sub OnStartPage(PassedScriptingContext As ScriptingContext)
    Set Baglam = PassedScriptingContext
    Set Uygulama = Baglam.Application
    Set Istek = Baglam.Request
    Set Cevap = Baglam.Response
    Set Sunucu = Baglam.Server
    Set Oturum = Baglam.Session
End Sub

Public Sub OnEndPage()
    Set Baglam = Nothing
    Set Uygulama = Nothing
    Set Istek = Nothing
    Set Cevap = Nothing
    Set Sunucu = Nothing
    Set Oturum = Nothing
End Sub

Public Sub Deneme()
    Cevap.Write "<html><head><title>ASP kodlarını DLL üzerinden çalıştırma denemesi</title>"
    Cevap.Write "</head><body><font color=""#FF0000"" size=2 face=""trebuchet ms"">"
    Cevap.Write "Bu sayfa bir DLL dosyasından türetilmiştir.</font></body></html>"
End Sub

Kodlama kısmı bittiğine göre artık DLL dosyamızı oluşturabiliriz. Bunun için File menüsünden Make ASPden.dll menüsünü tıklıyoruz. (Eğer projemizi farklı isimlendirdiysek bu menü Make Proje Adı.dll olarak görünecektir.) Ben kolaylık olsun diye projemi direkt olarak C: dizininin altında oluşturdum. Kaydedilen DLL dosyasının isminin hiçbir önemi olmadığı için istediğiniz ismi vererek projenizi derleyebilirsiniz (Yine ben Sniper adıyla derledim :) ). DLL dosyamızı oluşturduğumuza göre bunu sistemimize tanıtmanın zamanı geldi. Başlat menüsünden Çalıştır´ı seçiyoruz ve açılan pencereye regsvr32 C:Sniper.dll yazıp Enter tuşuna basıyoruz. Eğer karşımıza "DllRegisterServer / C:Sniper.dll başarıyla gerçekleştirildi." mesajı gelmediyse bir yerlerde hata yapmış olasılığımız üzerine yazıyı en baştan tekrar okuyoruz. (İnşallah yazım hatası yapmamışımdır da sürekli aynı yeri okumak zorunda kalmazsınız :P )

Tüm işlemlerimizi tamamladık. Artık derlediğimiz dosyamızı deneyelim değil mi? Eğer yukarıdaki kodları aynen kullandıysanız aşağıdakini de aynen kopyalayıp C:/inetpub/wwwroot/ klasörüne "asp2dll.asp" ismiyle kaydedin ve sonucu görmek için browser´ınızın adres kısmına http://localhost/asp2dll.asp yazın:

<%
Set Ornek = Server.CreateObject("ASPden.DLLye")
Ornek.Deneme()
%>


Konu: ASP dosyalarını DLL´ye çevirme
 
Okunma Sayısı : 212
Eklenme Tarihi : 31 Ocak 2007, Çarşamba
SONRAKI BILGI : İnsana çip taktılar   
Forum Linki:
Aranan Kelime:
 

En Yeni Bilgiler


 ISS PWS DB`Ye Yazma Okuma izni verme ISS PWS DB`Ye Yazma Okuma izni verme
 FSO ile Upload FSO ile Upload
 Rastgele şifre üretmek Rastgele şifre üretmek
 ASP - Boşluksuz(Space) Uzun Kelimeleri Bölme ASP - Boşluksuz(Space) Uzun Kelimeleri Bölme
 ASP ile Base64 Şifreleme ASP ile Base64 Şifreleme
 ASP ile Base64 Şifre Çözme ASP ile Base64 Şifre Çözme
 Tüm harfleri büyütme, küçültme ve kelimelerin ilk harflerini büyütme Tüm harfleri büyütme, küçültme ve kelimelerin ilk harflerini büyütme
 Mailleri bölerek göndermek Mailleri bölerek göndermek
 Türkçe karakterleri ingilizce karşılıklarına çevirmek Türkçe karakterleri ingilizce karşılıklarına çevirmek
 Hata sayfası(404) ile link yönetimi Hata sayfası(404) ile link yönetimi
 Mail okundu bilgisi Mail okundu bilgisi
 Online üyeler Online üyeler
 Önceki sonraki linki Önceki sonraki linki
 ASP ile Web Programcılığı ASP ile Web Programcılığı
 ASP de diziler , dizi değişkenler ASP de diziler , dizi değişkenler
 ASP - Operatörler ASP - Operatörler
 ASP ile MySQL verilerini sayfalama ASP ile MySQL verilerini sayfalama
 ASP ile MS Access verilerini sayfalama ASP ile MS Access verilerini sayfalama
 ADO - Giriş (Bölüm 1 ADO - Giriş (Bölüm 1
 ADO - Connection (Bölüm 2) ADO - Connection (Bölüm 2)
 ASP ile Online Radyo Hizmetine Giriş ASP ile Online Radyo Hizmetine Giriş
 ASP dosyalarını DLL´ye çevirme ASP dosyalarını DLL´ye çevirme
 HTTP 500.100 hatalarına hükmedin HTTP 500.100 hatalarına hükmedin
 ASP ve VBScript nedir? ASP ve VBScript nedir?
 VBScriptte Veri Tipleri VBScriptte Veri Tipleri
 VBScriptte değişkenler ve sabitler VBScriptte değişkenler ve sabitler
 VBScriptte Dictionary Nesnesi VBScriptte Dictionary Nesnesi
 Regular Expressions (Düzenli İfadeler) Regular Expressions (Düzenli İfadeler)
 Şartlı ifadeler Şartlı ifadeler
 Persist Bileşeni ile Email formu Persist Bileşeni ile Email formu
 Vertabanından 2-3-4`erli sıralama Vertabanından 2-3-4`erli sıralama
 Arama Motoru yapmak Arama Motoru yapmak
 Jmail bileşeni ile mail formu Jmail bileşeni ile mail formu
 ASP`ye giriş ASP`ye giriş
 Değiskenler Değiskenler
 ASP başlangıç ASP başlangıç
 Arama Motoru Arama Motoru
 Form bilgileri Form bilgileri
 Veritabanı, kayıt ve silme işlemleri Veritabanı, kayıt ve silme işlemleri
 Veritabanına bağlanmak ve veri almak Veritabanına bağlanmak ve veri almak
 Veritabanı oluşturma Veritabanı oluşturma
 Querystring Querystring
 Mailllist yapımı Mailllist yapımı
 Kayıtları Sayfalara bölmek Kayıtları Sayfalara bölmek
 Sub kullanımı Sub kullanımı
 Ziyaretçi`nin IP Numarasını almak Ziyaretçi`nin IP Numarasını almak
 Sayfaya şifre koymak Sayfaya şifre koymak
 Online kişi sayısı Online kişi sayısı
 Kategorili Sistem Kategorili Sistem
 Tarihler arası veri seçtirmek. Tarihler arası veri seçtirmek.
 GET Yöntemi ile İşlemler GET Yöntemi ile İşlemler
 POST Yöntemi ıle ışlemler POST Yöntemi ıle ışlemler
 ASP`de Güvenlik Önlemleri ASP`de Güvenlik Önlemleri
 Cdonts ile mail formu Cdonts ile mail formu
 FSO ile log tutmak FSO ile log tutmak
 ASPUpload bileşeni ASPUpload bileşeni
 Sunucu Değişkenleri Sunucu Değişkenleri
 Alışveriş ve Sepet Yapımı Alışveriş ve Sepet Yapımı
 Flood koruması Flood koruması
 Sayfaları şifreleme(ENCODE) Sayfaları şifreleme(ENCODE)
 SPLIT Kullanımı SPLIT Kullanımı
 YTL Güncellemesi YTL Güncellemesi
 Tarih ve Saat Fonksiyonları Tarih ve Saat Fonksiyonları
 Döngüler Döngüler
 XMLHTTP XMLHTTP
 NTVMSNBC.COM Haberleri NTVMSNBC.COM Haberleri
 IIS Ayarları 2 IIS Ayarları 2
 ASP Tear ASP Tear
 Rastgele Veri Rastgele Veri
 ASP Jpeg ASP Jpeg
 SQL Komutları SQL Komutları
 Array Nesnesi Array Nesnesi
 If...else ıfadesi If...else ıfadesi
 Tavsiyet Et Tavsiyet Et
 Birden Fazla Alanadı Desteği Birden Fazla Alanadı Desteği
 Online Üyeler Online Üyeler
 Güvenlik Kodu Güvenlik Kodu
 MS SQL Server - 2 MS SQL Server - 2
 MS SQL Server - 1 MS SQL Server - 1
 MS SQL Server - 3 MS SQL Server - 3
 XMLHTTP ile döviz Kurları XMLHTTP ile döviz Kurları
 TL`yi YTL olarak Yazdırmak TL`yi YTL olarak Yazdırmak
 YTL`yi TL olarak Yazdırmak, YTL`yi TL olarak Yazdırmak,
 Dönüşümlü Banner Sistemi Dönüşümlü Banner Sistemi
 IP Filtresi IP Filtresi
 MySmartUpload Bileşeni MySmartUpload Bileşeni
 SQL İle İşlemler SQL İle İşlemler
 Cookie(Çerez) Kullanımı Cookie(Çerez) Kullanımı
 ASP ile Mail gönderme. ASP ile Mail gönderme.
 SQL - Yapısal Sorgu Dili 1 SQL - Yapısal Sorgu Dili 1
 MS SQL Server - 4 MS SQL Server - 4
 Klasör Şeklinde Linkler(404 Yönetimi) Klasör Şeklinde Linkler(404 Yönetimi)
 Http`leri Link Yapmak Http`leri Link Yapmak
 Cookie`s (Çerezler) Cookie`s (Çerezler)
 Renkli Tablolar Renkli Tablolar
 Windows XP`de SMTP Kurulumu Windows XP`de SMTP Kurulumu
 Err Nesnesi Kullanımı Err Nesnesi Kullanımı
 MS SQL Server - 5 MS SQL Server - 5
 Daha Performanslı Kodlar Daha Performanslı Kodlar
 Jmail ile Şifreleme Jmail ile Şifreleme
 Karakter Temizleme Karakter Temizleme
 Sınırsız Kategori Sistemi Sınırsız Kategori Sistemi
 Makale Sayfalama Makale Sayfalama
 IIS Kurulumu ve Yazma İzni IIS Kurulumu ve Yazma İzni
 Geçen Zaman Gösterimi Geçen Zaman Gösterimi
 Include Yöntemleri Include Yöntemleri
 E-Mail adresi kontrolü E-Mail adresi kontrolü
 Açılır Kutu(DropDown) yapımı Açılır Kutu(DropDown) yapımı
 FSO ile Listeleme FSO ile Listeleme
 Tarih Format`ı Tarih Format`ı
 XmlHTTP Türkçe Karakter Problemi XmlHTTP Türkçe Karakter Problemi
 Bileşen Kurulumu Bileşen Kurulumu
 Stored Procedure - MSSQL Stored Procedure - MSSQL
 Ntvmsnbc Haberleri (XmlHTTP) Ntvmsnbc Haberleri (XmlHTTP)
 Tarih Biçimleri Tarih Biçimleri
 Stored Procedure Değişkenler Stored Procedure Değişkenler
 Fonksiyon(Function) Kullanımı Fonksiyon(Function) Kullanımı
 Tablolu Yanyana Sıralama Tablolu Yanyana Sıralama
 Puan sistemi Puan sistemi
 Access`ten MSSQL`e Access`ten MSSQL`e
 SQL Distinct Kullanımı SQL Distinct Kullanımı
 Değer Fonksiyonları Değer Fonksiyonları
 Türkçe karakter kontrol Türkçe karakter kontrol
 ASP Class(Sınıf) Kullanımı ASP Class(Sınıf) Kullanımı
 Üyelik Sistemi Yapımı Üyelik Sistemi Yapımı
 IIS Şifresi Koymak IIS Şifresi Koymak
 Operatörler: Operatörler:
 RSS Sayfası Yapımı RSS Sayfası Yapımı
 Veritabanı Tablo İşlemleri Veritabanı Tablo İşlemleri
 

 

 

Copyright © 2008 Temha.neT