Delphi veya Pascal ile TSR program yazılabilirmi ?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Delphi veya Pascal ile TSR program yazılabilirmi ?
Merhaba
Delphi veya Pascal ile TSR ( Terminate And Stay Resident Program ) program nasıl yazabiliriz ? Bu konuda bana yardımcı olacak kaynak önerebilirmisiniz ? Öncelikle söyleyeyim assembler bilmiyorum. Yapmak istediğim işlem şu, örneğin klavyeden CTRL + L tuşuna basınca TSR program uyarılacak ve çalışmaya başlayacak ve sürekli bir loop içinde Z 1 2 3 tuşlarına basacak sonra 1 saniye bekleyecek. Ben klavyeden tekrar CTRL + L tuşuna basınca duracak. Böyle bir program yazmak istiyorum. Ama nerden başlasam hiç bilmiyorum. Bu konuda bilgisi olan arkadaşların yardımlarını bekliyorum.
Bu konuda bildiğiniz sağlam bir kaynak ( özelikle türkçe olursa süper olur )
önerirseniz memnun olurum.
Görüşmek Dileğiyle
Clipper
Delphi veya Pascal ile TSR ( Terminate And Stay Resident Program ) program nasıl yazabiliriz ? Bu konuda bana yardımcı olacak kaynak önerebilirmisiniz ? Öncelikle söyleyeyim assembler bilmiyorum. Yapmak istediğim işlem şu, örneğin klavyeden CTRL + L tuşuna basınca TSR program uyarılacak ve çalışmaya başlayacak ve sürekli bir loop içinde Z 1 2 3 tuşlarına basacak sonra 1 saniye bekleyecek. Ben klavyeden tekrar CTRL + L tuşuna basınca duracak. Böyle bir program yazmak istiyorum. Ama nerden başlasam hiç bilmiyorum. Bu konuda bilgisi olan arkadaşların yardımlarını bekliyorum.
Bu konuda bildiğiniz sağlam bir kaynak ( özelikle türkçe olursa süper olur )
önerirseniz memnun olurum.
Görüşmek Dileğiyle
Clipper
TSR programlar DOS zamanında kaldı. Multitasking yapamayan DOS'a bu yeteneği bir bakıma kazandırmak için yapılmışlardı.
Delphi ile DOS TSR uygulamaları yapamazsın. Ancak Turbo Pascal veya Borland Pascal ile yapabilirsin. Bu uygulamaların Windows XP gibi bir işletim sisteminde sağlıklı çalışacağını zannetmiyorum.
Bunu ne için istediğini belirtirsen daha fazla yardımcı olmaya çalışayım.
Delphi ile DOS TSR uygulamaları yapamazsın. Ancak Turbo Pascal veya Borland Pascal ile yapabilirsin. Bu uygulamaların Windows XP gibi bir işletim sisteminde sağlıklı çalışacağını zannetmiyorum.
Bunu ne için istediğini belirtirsen daha fazla yardımcı olmaya çalışayım.
Coderlord+1
ek olarak dediği gibi
Pascalda yazılır. Çokişlemlilik özelliği olmayan dos'ta bu tekniğe başvurulurdu. Delphi de bunun karşılığı "Timer" nesnesini kullanmanızdır.
Pascal'da eğer TSR türü programlar yazacaksanız keep komutunu ve kesmeleri (interrupt) araştırın.
Mesela saat kesmesi $1c olsa gerekti. Klavye kesmesi $9c olması lazım. (unutmadıysam 10 yıl önceki bilgilerim)
Bunun haricinde
getintvec
setintvec
swapvectors
gibi komutlar kullanılıyordu.
google'da keep+pascal veya keep+tsr+pascal diye arattırın.
ek olarak dediği gibi
Pascalda yazılır. Çokişlemlilik özelliği olmayan dos'ta bu tekniğe başvurulurdu. Delphi de bunun karşılığı "Timer" nesnesini kullanmanızdır.
Pascal'da eğer TSR türü programlar yazacaksanız keep komutunu ve kesmeleri (interrupt) araştırın.
Mesela saat kesmesi $1c olsa gerekti. Klavye kesmesi $9c olması lazım. (unutmadıysam 10 yıl önceki bilgilerim)
Bunun haricinde
getintvec
setintvec
swapvectors
gibi komutlar kullanılıyordu.
google'da keep+pascal veya keep+tsr+pascal diye arattırın.
Ben programlamaya ilk başladığı dönem dosun can çekişte dönemdi. İşin içine iyice girdiğimde dos tabuttaydı
Hayal meyal hatırladığıma göre Bu TSR olayı programı özel bir kesmeyle sonlandırarak yapılıyordu.
Devir multitasking dönemi @coderlord un bahsettiği gibi, onun için sorununuzu açarsanız bu dönemin sunduğu imkanlarla düşünerek çözüme ulaşabiliriz.

Devir multitasking dönemi @coderlord un bahsettiği gibi, onun için sorununuzu açarsanız bu dönemin sunduğu imkanlarla düşünerek çözüme ulaşabiliriz.
-
- Kıdemli Üye
- Mesajlar: 1223
- Kayıt: 26 Nis 2005 04:08
Vay Gürcan abim bebLue aLonE yazdı:Turbo Pascal 7.0 Gürcan Banger..Örnek TSR kodlarıyla birlikte harkulâde bir anlatım bulabilirsin (lakin kitabı bulabilir misin onu bilemiyorum)..
Kolay gele..



Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Cevaplarınız için teşekkürler. Benim amacım , oğlumun oynadığı bir oyun var onun için macro yazmak isteiştim. Oyunda sürekli saldırı yapması için Z 1 2 ve 3 tuşlarına seri olarak sürekli basması gerekiyor. Bu işlemi bir TSR program ile Win XP altında çalıştırabiliriz diye düşünmüştüm. Bu konuda yardımcı olacak başka fikri olan varsa TSR dışında da olabilir çok memnun olacağım.
TSR'ye gerek yok. Zaten Win32'de bu pek anlam ifade etmiyor.Clipper yazdı:bir oyun var onun için macro yazmak isteiştim. Oyunda sürekli saldırı yapması için Z 1 2 ve 3 tuşlarına seri olarak sürekli basması gerekiyor.
Bunun yerine, Isletim Sistemine klavyeden gemis gibi bilgiler gondermniz lazim. Bugune kadar boyle bir sey bana hic gerekmedi ama cok da zor degil.
Delphi'de bunu yapabilirsiniz, once sunu okumaniz lazim.
http://msdn.microsoft.com/library/en-us ... frame=true
Bunu da okumanizda fayda var :
http://www.mcse.ms/archive61-2004-9-1081381.html
Boylece ogluna hile yapmagi ogretmek bir yana ona bunun icin bir de program yazmis nadir babalardan birisi olacaksiniz. Sizin bileceginiz bir seydir tabii ki

Adem
Aslında ben bu açıdan hiç düşünmemiştim.Ben oğlum oyunu bir an önce bitirsin de aklı oyunda kalmasın diye düşünmüştüm. Beni uyardığınız için ve yardımlarınız için tekrar teşekkür ederim. Ama ben gene de meraktan bu programı yapmaya çalışacağım ama oğluma oynatmayacağım. Zaten programı yazmak benim için biraz zor olacak çünkü yaklaşık 5-6 yıldır profesyonel anlamda delphi ile program yazmıyorum. Bir çok bilgiyi unuttum. Ama hobi olarak da olsa boş vakitlerimde birşeyler yapmaya çalışıyorum.MuzAn yazdı: Boylece ogluna hile yapmagi ogretmek bir yana ona bunun icin bir de program yazmis nadir babalardan birisi olacaksiniz. Sizin bileceginiz bir seydir tabii ki
Adem
Yardımcı olmaya çalışan herkese tekrar teşekkür ederim
Clip