Online-Bilgi Yardımı
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Online-Bilgi Yardımı

Online-Bilgi | Uzun Soluklu Paylaşım
 
AnasayfaLatest imagesAramaKayıt OlGiriş yap

 

 İnternette Özel Belge Türleri

Aşağa gitmek 
YazarMesaj
Metruk
Root Admin
Metruk


Mesaj Sayısı : 351
Kayıt tarihi : 02/04/10
Yaş : 32

İnternette Özel Belge Türleri Empty
MesajKonu: İnternette Özel Belge Türleri   İnternette Özel Belge Türleri Icon_minitimeSalı Nis. 06, 2010 3:06 pm

İnternette özel belgeleri yayınlamak için ASP'de
ContentType özelliğini belge türü olarak ayarlamak yeterlidir. Bu, ASP
dosyasının resim, xml, word ya da başka bir belge türü olarak
yorumlanabilmesini sağlar.


Windows farklı belge türleri
için özelleştirilmiş komutların çalıştırılmasına, belgeler için farklı
resimlerin ve ipucu bilgilerinin görüntülenmesine olanak tanır. Her
dosya uzantısı için farklı komut listeleri açılabilir, bu dosyalar için
özel simgeler görüntülenebilir. HTML belgeleri için ise dosya uzantısı
tek olduğu halde farklı davranışlar geliştirilebilir.




- İnternette yayınlanan belgeleri özelleştirmek

- ASP dosyasından Excel, Word ve diğer Office belgelerini
üretmek


- ASP ile dinamik takvim dosyası üretmek

- HTML içinde belge türü tanımlamak

- Windows'ta kendi belge türünüzü tanımlayın

- Belge türleri için özel simgeler görüntülemek





İNTERNETTE DOSYA TÜRLERİ



Internet'te yayınlanan belgelerin özelleştirilip, web
gözatıcıları dışındaki programlarda geçerli olarak açılabilmesi,
Windows'un sunduğu bir olanaktır. Yüklenen bir web belgesinin içerik
türü bilgisi sistemde araştırıldıktan sonra, belgenin ilgili uygulama
ile açılması sağlanabilir.




Internet'ten yüklenen her belge için ContentType özelliği
mevcuttur. HTML belgeleri için bu geçerli olarak "text/html"dir. ASP
belgelerinde de aksi belirtilmediği sürece aynıdır.




<% Response.Write Response.ContentType %>



Yukarıdaki ASP komutu geçerli ContentType özelliğini
yazdırmaktadır. Bu özellik belgenin farklı türde yorumlanmasını da
sağlayabilir. XML Kursu'nu takip edenler, ASP ile XML belgesi
üretilirken "text/xml" değerini kullandığımızı hatırlayacaklardır.




<% Response.ContentType = "text/xml" %>



Belgenin HTML'den farklı şekilde yorumlanmasının
amaçlandığı durumlar için bu yöntem zengin seçenekler sunmaktadır.
Örneğin bu değeri "application/msword" şeklinde değiştirerek belgenin
bir anda Word içinde açılmasını sağlayabiliriz.




<%@ Language=VBScript %>
<% Response.ContentType="application/msword" %>


<html>


<body>


Bu belge ASP ile üretilmiş bir Word belgesidir.


Response.ContentType özelliğine <b>"<%
=Response.ContentType %>"</b> değeri atanmıştır.


</body>


</html>





Excel için ise "application/vnd.ms-excel" kullanılıyor.



[Resimleri görebilmek için üye olun veya giriş yapın.]

Microsoft'un sitelerinde çokça kullanılan takvim dosyası
yükleme uygulaması da benzer yöntemle yapılmaktadır. Bir seminer
hakkında duyuru yayınlandığında ek olarak dinamik bir takvim (ics)
dosyası yüklenebiliyor.




Takvim belgeleri oluşturmak için ContentType özelliğine
"text/calendar" değeri atanıyor. Geçerli olarak ics uzantısına sahip bir
MS Outlook takvim belgesinin içeriği aşağıdakine benzerdir.




toplanti.ics.txt
BEGIN:VCALENDAR


PRODID:-//Microsoft Corporation//Outlook 10.0
MIMEDIR//EN


VERSION:2.0


METHOD:PUBLISH


BEGIN:VEVENT


ORGANIZER:MAILTO:aliveli@deneme123.com


DTSTART:20020906T090000Z


DTEND:20020906T093000Z


TRANSP:OPAQUE


SEQUENCE:0


UID:040000008200E00074C5B7101A82E00800000000A0A14F
273251C


DTSTAMP:20020831T180537Z


DESCRIPTION:Tum calisanlar bu tarihte toplantiya
katilacaktir.\nToplantinin


konusu yillik pazarlama faaliyetlerimiz olacaktir.


SUMMARY:Sirket Toplantisi


PRIORITY:5


CLASS:PUBLIC


BEGIN:VALARM


TRIGGER:-PT15M


ACTION[Resimleri görebilmek için üye olun veya giriş yapın.]ISPLAY


DESCRIPTION:Reminder


END:VALARM


END:VEVENT


END:VCALENDAR





ContentType özelliğini gerekli şekilde ayarladıktan sonra
yukarıdaki gibi bir metni yayınlamak yeterlidir.




toplanti.asp.txt
<%@ Language=VBSCript %><%


Response.ContentType="text/calendar"


%>BEGIN:VCALENDAR


PRODID:-//Microsoft Corporation//Outlook 10.0
MIMEDIR//EN


VERSION:2.0


METHOD:PUBLISH


...


...





[Resimleri görebilmek için üye olun veya giriş yapın.]



Takvim bilgilerini el ile girmek yerine Microsoft
Outlook'ta bunu yapmak daha kolaydır. Outlook'ta Takvim (Calendar)
sayfasına gelip yeni bir kayıt (appointment) oluşturduktan sonra
File/SaveAs ile bunu iCalendar (ics) biçimine dönüştürebilirsiniz.


Office belgelerini yayınlarken belgenin Office
uygulamasında değil de, Internet Explorer içinde açılmasından
şikayetçiyseniz birkaç küçük ayar değişikliği ile bunu giderebilirsiiz.




Windows Gezgini'nde iken Tools / Folder Options / File
Types sekmesini açıp Doc uzantısını bulun. Advanced komutunu verdikten
sonra açılan diyalog kutusundaki "Browse in same window" seçeneğindeki
işareti kaldırın. Böylelikle Internet’ten bir word belgesi yüklemek
istediğinizde belge Internet Explorer'da değil, Word uygulaması içinde
açılacak. Aynı ayarlamayı diğer Office uygulamaları için de
yapabilirsiniz.




[Resimleri görebilmek için üye olun veya giriş yapın.]



Bu seçeneğin Registry'deki kaydı HKCR\Word.Document.8
altında tutuluyor. Burada REG_DWORD tipinde BrowserFlags adlı bir değer
oluşturulup değeri 8 yapılmalı. (Excel 2000 için "Excel.Sheet.8".
Powerpoint 2000 sunuları için "PowerPoint.Show.8" ağaçlarında benzer
değişiklik yapılmalı.)






ÖZEL HTML BELGELERİ



Windows'taki tüm belge türü tanımları kayıt defterinde
(Registry) tutulur. Bu yüzden belgeler açılırken Windows'un nasıl
davranacağını belirlemek mümkündür. Özellikle dosya uzantılarına göre
birçok özelleştirme yapılabilir. Bir dosya türü izlenirken gösterilen
ipucu bilgisinden tutun, o türe ait simgenin nereden alınacağı, dosyayı
açabilecek uygulamaların listesi, fare menüsündeki komutlar ve ayrıntılı
daha birçok bilgi kayıt defterinde tanımlanabilmektedir.




Bununla birlikte Windows 2000'den itibaren HTML
belgelerine özgü olarak birtakım özelleştirilmelerin yapılması mümkün
olmaktadır. Bunlardan ikisi belge-klasör bağlantısı ve html içinde belge
türü tanımlamasıdır.




Internet Explorer'da iken kaydedilen bir HTML belgesi
için genellikle ekte "_dosyalar" ya da "_files" uzantılı bir klasör
oluşturulur ve sayfadaki resimler ve diğer dosyalar bu klasör içine
kaydedilir. Sonrasında Windows 2000 htm dosyasını ve ekteki "_files"
klasörünü bağlı olarak kabul eder. Bunlardan biri taşındığında ya da
silindiğinde diğeri için de aynı işlem uygulanır.




Bunu denemek için htm uzantılı, içeriği önemli olmayan
geçici bir dosya oluşturun. Aynı yerde adı bu dosyanın ön adı ile aynı
olan bir klasör oluşturun. Bu klasörün adının sonuna işletim sistemi
Türkçe ise "_dosyalar", İngilizce ise "_files" ekini getirin. Her ne
durumda olursa olsun Windows 2000 bu dosya ve klasörü bağlantılı olarak
kabul eder ve biri taşındığında da diğeri taşınır. Silinme durumunda da
aynı şey geçerlidir. ("_files" ekinde "_" işareti yerine "." işareti de
kullanılabilir.)




Bu özelliği
HKCU\Software\Microsoft\Windows\CurrentVersion\Exp lorer anahtarı
altındaki NoFileFolderConnection bilgisinin değerini "1" yaparak
devredışı bırakmak mümkündür.






HTML İÇİNDE BELGE TÜRÜ TANIMLAMA



HTML belgeleri Windows'ta biraz daha fazla
özelleştirilebilmektedir. Yukarıda anlatılan belge-klasör bağlantısı
dışında, belge içinde Windows'un anlayacağı şekilde tür tanımlaması
yapılması sözkonusudur.




Head bölgesinde oluşturulacak ProgID adlı bir Meta
bilgisi belgenin türünü tanıtmaktadır.




<head>
...


<meta name=ProgId content=Excel.sheet>


...


</head>





ProgID adlı Meta bilgisinin Content özniteliği belgenin
türünü belirtmektedir. Buraya "Excel.sheet" değeri atandığında belge
Excel dosyasıymış gibi görüntülenir.




Zaten Excel ve diğer Office programları, web sayfası
olarak kaydettikleri belgelere bu bilgiyi eklemektedirler. Bu durumda
farklı HTML belgeleri için düzenleme komutu (edit) verildiğinde
Frontpage gibi bir HTML düzenleyici açılmazken ilgili Office uygulaması
açılır.




Belge dosyasının simgesi de uygulamaya göre farklı
şekilde gösterilir.




[Resimleri görebilmek için üye olun veya giriş yapın.]

Üstteki resimde tüm dosyaların uzantısı HTML olmasına
rağmen herbiri için farklı simgeler gösterilmektedir. Bu, tabii ki
Office türleri dışındaki belge türleri için de geçerlidir. Resimde
“CHIP” simgeli bir html belgesi görüyorsunuz zaten.






KENDİ BELGE TÜRÜNÜZÜ TANIMLAYIN



Bir belge türü tanımlamak, yalnızca kayıt defterinde bir
yığın ayar yapmayı gerektirir. Belge türü için ne kadar çok özelleştirme
varsa, yapılması gereken ayarlar da o kadar çoktur.




En basit belge türü tanımlaması, geçerli uzantıdaki bir
dosyanın çift tıklatılarak açılacağı programı belirleyerek yapılabilir.
Windows Gezgini'nde Tools / Folder Options / File Types (Dosya Türleri)
bölümünde yeni bir dosya türü, uzantı belirtilerek tanımlanabilir ve bu
uzantıya sahip dosyaların hangi programla açılacağı belirlenebilir.




Belge türü oluşturulurken kayıt defterine birtakım
kayıtlar girilir. Bizim belirlediğimiz ".chip" uzantısı için kayıt
defterinde aşağıdaki kayıtları oluşturduk.






[HKEY_CLASSES_ROOT\.chip]
@="chipdosya"


"InfoTip"="Chip deneme dosyası"



[HKEY_CLASSES_ROOT\ChipDosya]




[HKEY_CLASSES_ROOT\ChipDosya\Curver]



@="ChipDosya.1"



[HKEY_CLASSES_ROOT\ChipDosya.1]



@="Chip uzantılı deneme dosyası"



[HKEY_CLASSES_ROOT\ChipDosya.1\DefaultIcon]



@="c:\\chipdosya.ico"



[HKEY_CLASSES_ROOT\ChipDosya.1\Shell]




[HKEY_CLASSES_ROOT\ChipDosya.1\Shell\Open]



@="&Aç"



[HKEY_CLASSES_ROOT\ChipDosya.1\Shell\Open\Command]



@="notepad.exe %1"







[Resimleri görebilmek için üye olun veya giriş yapın.]



HKCR altında temel olarak üç anahtar oluşturmak
yeterlidir. Bunlar ".chip", "ChipDosya" ve bunun geçerli sürüm bilgisini
ifade eden "ChipDosya.1" anahtarlarıdır.




Chip uzantılı bir dosyaya erişildiğinde kayıt
defterindeki .chip anahtarının geçerli değerindeki "chipdosya" bilgisi
elde edilir. Sonra bu anahtara ulaşılır ve Curver altında belirtilen
yeni anahtara gidilir.




Bilgisayarda yüklü Com nesnelerinin farklı sürümlerine
ulaşmak için nesne adının sonunda sürüm bilgisi de kullanılabilmektedir.
Örneğin ADO'nun yüklü olan farklı sürümlerine erişmek için,
CreateObject komutu ile "ADODB.Connection.2.7" ya da "
ADODB.Connection.2.5" nesneleri oluşturulabilir ve bunların kullanımları
tabii ki birbirinden farklıdır. Ama Com mimarisinin getirdiği
kolaylıklardan biri her yeni sürüm için kodları değiştirmek yerine daha
genel isimler kullanmaktır. Bu da ancak Curver (current version) gibi
geçerli sürümü işaret eden bir anahtar alanı oluşturmakla mümkündür. Şu
durumda bu bilgi genellikle son yüklenen sürümü işaret eder. Bizim
bilgisayarımızda bu "ADODB.Connection.2.7" şeklindedir ve her
"ADODB.Connection" oluşturma isteğinde aslında bu anahtara yönelinir.




ADO'nun olası 2.8 sürümü yüklendiğinde ise CurVer bilgisi
herhalde "ADODB.Connection.2.8"den başkası olmayacaktır. Böylelikle
ADO'nun kurulu tüm sürümlerine ulaşılabilmesinin yanında genel isim
kullanıldığında da son sürüme erişilir. Yani
CreateObject(“ADODB.connection”) şeklinde genel bir isim ile Com
bileşeninin çağrılması sağlanmış olur.




Chip uzantılı dosyalarımız için de benzeri sözkonusudur.
Chip uzantılı bir dosyaya ulaşıldığında son olarak "ChipDosya.1"
anahtarına kadar gelinir. Burada dosya türünün Windows Gezgini'nde
görüntülenecek açıklaması, dosya simgesinin konumu, sağ tuş menüsünde
yer alacak komut listesi ve dosyanın çift tıklatıldığında hangi program
ile açılacağı gibi bilgiler yer alır.




Dosya adı, bir programla ilişkilendirilirken program
dosyasının yoluna genellikle " %1" eklenir. Bu, dosyanın yolunu programa
göndermektedir. Dosyayı gerçekten açma işlemini başarmak, ilişkili
programın sorumluluğundadır.




HTML belgelerinde bildirilen belge türleri için ise ek
bir dosya türü tanımlanmalıdır. Örneğin Excel belgeleri için .xlshtml
uzantılı bir dosya türü oluşturulmuştur. Bu türün tanımlandığı yerde
Excelhtmlfile başlığı işaret edilir. Excelhtml altında ise dosyanın ne
ile ve nasıl açılması hakkında bilgiler ve simgenin alınacağı adres yer
alır.




Bu kadarı, HTML içinde türü bildirilen belgelerin
gerçekten tanınması için yeterli değildir. Excel sayfalarını ifade eden
Excel.Sheet anahtarının altında "HTML Handler" başlıklı bir alt anahtar
daha bulunur (HKCR\Excel.Sheet.8\HTML Handler). Burada HTML dosyasının
başka bir dosya uzantısına sahipmiş gibi davranmasını sağlayacak
tanımlamalar yapılmıştır. Örneğin Icon anahtarında html belgesinin olası
dosya uzantılarına karşılık simgenin yüklenmesinde belirleyici gerçek
uzantılar bildirilmiştir.






[HKEY_CLASSES_ROOT\.chiphtml]
@="ChipHTMLDosya"



[HKEY_CLASSES_ROOT\.chiphtml\ChipHTMLDosya]




[HKEY_CLASSES_ROOT\ChipHTMLDosya]



@="Chip HTML Dosyası"



[HKEY_CLASSES_ROOT\ChipHTMLDosya\DefaultIcon]



@="c:\\chiphtml.ico"



[HKEY_CLASSES_ROOT\ChipHTMLDosya\Shell]




[HKEY_CLASSES_ROOT\ChipHTMLDosya\Shell\Open]



@="&Aç"



[HKEY_CLASSES_ROOT\ChipHTMLDosya\Shell\Open\Command]



@="notepad.exe %1"



[HKEY_CLASSES_ROOT\ChipDosya\HTML Handler]




[HKEY_CLASSES_ROOT\ChipDosya\HTML Handler\Icon]



@=".chiphtml"


".htm"=".chiphtml"


".html"=".chiphtml"







ProgID bilgisinin "ChipDosya" şeklinde olduğu HTML
belgeleri için, ".htm" ve ".html" uzantıları kullanıldığında belge
aslında ".chiphtml" dosyasıymış gibi davranacaktır.




[Resimleri görebilmek için üye olun veya giriş yapın.]





<head>
...


<meta name=ProgId content=ChipDosya>


...


</head>







ASP'DE ÖZEL BELGE TÜRÜ TANIMLAMA



ASP sayfalarından yüklenen belgeler için de
özelleştirmeler yapılabilmektedir. [HKCR\MIME\Database\Content Type]
anahtarı altında, ASP'deki Response.ContentType ile kullanılabilecek
geçerli tüm belge türleri yer alır. Örneğin XML belgeleri için
response.contenttype="text/xml" komutunun doğru çalışması buraya
bağlıdır.




Chip dosyamız için de buraya gerekli bilgileri ekleyerek
ASP'deki response.contenttype="text/chip" gibi bir satırın doğru
çalışmasını ve yüklenen belgenin .chip uzantılı bir dosya imiş gibi
davranmasını sağlayabiliriz.


[HKEY_CLASSES_ROOT\MIME\Database\Content
Type\text/chip]



"Extension"=".chip"



.chipDosya uzantısıChipDosya Belge türü tanımlamasıChipDosya.1 Belgenin sürümünü ifade eden
belge türü tanımlaması
.chiphtml HTML biçimindeki dosyanın uzantısıChipHTMLDosya
HTML biçimindeki dosya türü adı

Dosya türlerine özel simgeler göstermek için DefaultIcon
bilgisine geçerli bir simge adresi atamak yeterlidir. Bu ico uzantılı
bir simge dosyasının adresi olabileceği gibi, "c:\...\resimler.exe, 15"
şeklinde resim kaynağı içeren bir uygulama dosyasındaki kaynak
bölgesinin adresi de olabilir.
Sayfa başına dön Aşağa gitmek
http://online-bilgi.nstars.org
 
İnternette Özel Belge Türleri
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» ******'ün Özel Belgeleri & Özel Eşyaları & Madalyaları
» Şiir türleri
» İnternette XML Kullanmak
» TBMM arşivinden çıkan tarihi belge
» Proxy Nedir ( İnternette Ip Gizlemek )

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
Online-Bilgi Yardımı :: Donanım&İşletim Sistemleri&Network :: İnternet ve Network-
Buraya geçin: