Statik yada Dinamik Virtual Comport acma ve kontrol etme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
aegean
Üye
Mesajlar: 41
Kayıt: 24 Tem 2019 09:32

Statik yada Dinamik Virtual Comport acma ve kontrol etme

Mesaj gönderen aegean »

Merhaba sayın arkadaşlar,
Burada birçok arkadaş bana bazı problemleri çözmemde yardımcı oldular. hepsine sonsuz teşekkür ederim.
Gelelim konuya, çalıştığım bir projede tıpkı (Barkod okuyucu gibi virtual comport olarak tanımlı) usb bir cihazı taktığımızda windows un kendi driverleri ile virtual comport acıp sonra ona bos bir comport numarası atayan (gerektiğinde device manager den konfürasyon değiştirilebilen), ama piyasada dll veya exe gibi hazır program yardımı olmadan delphi içinden bunu gerçekleştirebileceğim örnek ve kaynak arıyorum. Bu arada internette becerebildiğim kadarıyla araştıma yaptım ve düzinelerce ücretli yardımcı var ama hiç biri benim istediğimi yapma imkanına sahip değil. Ya 2 comport acıp onları birbirine sanal null modem kablo ile bağlıyorlar (com0com gibi) yada genel olarak baglantıyı yönlendiriyor ikiye üçe ayırıyor kopyalıyor tcp port gonderiyor gibi gibi ama ben direkt olarak program içinde bir ini dosyasından okuyup o kayıtlara göre dinamik comport açıp program kapanınca yok olmasını ve karsı programın buna yerel comport gibi bağlanıp haberleşmesini ve ben program içinden bu porttan veri almak ve göndermek istiyorum. Sanırım yeterinde acık anlatabilmişimdir.
Bu konu üzerinde daha önce çalışmış ve yardımcı olacak arkadaşlar var ise önerilerinizi dinlemek ve biraz yol kat etmek iyi olur.
Değerli zamanlarını ayırıp yardımcı olacak arkadaşlara şimdiden teşekkür ederim.
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2357
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: Statik yada Dinamik Virtual Comport acma ve kontrol etme

Mesaj gönderen freeman35 »

Amacın tam olarak ne anlamadım. Karşı program dediğin senin yazdığın bir program mı? comm port demişsin ama bilgi alışverişinden bahsediyorsun, o zaman neden comm port? tcp olur mesela. Amaç iki program arasında bilgi aktarımı, bir cihaz değil sanırım.
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
ertank
Kıdemli Üye
Mesajlar: 1657
Kayıt: 12 Eyl 2015 12:45

Re: Statik yada Dinamik Virtual Comport acma ve kontrol etme

Mesaj gönderen ertank »

aegean yazdı: 07 Ağu 2023 11:20 Merhaba sayın arkadaşlar,
Burada birçok arkadaş bana bazı problemleri çözmemde yardımcı oldular. hepsine sonsuz teşekkür ederim.
Gelelim konuya, çalıştığım bir projede tıpkı (Barkod okuyucu gibi virtual comport olarak tanımlı) usb bir cihazı taktığımızda windows un kendi driverleri ile virtual comport acıp sonra ona bos bir comport numarası atayan (gerektiğinde device manager den konfürasyon değiştirilebilen), ama piyasada dll veya exe gibi hazır program yardımı olmadan delphi içinden bunu gerçekleştirebileceğim örnek ve kaynak arıyorum. Bu arada internette becerebildiğim kadarıyla araştıma yaptım ve düzinelerce ücretli yardımcı var ama hiç biri benim istediğimi yapma imkanına sahip değil. Ya 2 comport acıp onları birbirine sanal null modem kablo ile bağlıyorlar (com0com gibi) yada genel olarak baglantıyı yönlendiriyor ikiye üçe ayırıyor kopyalıyor tcp port gonderiyor gibi gibi ama ben direkt olarak program içinde bir ini dosyasından okuyup o kayıtlara göre dinamik comport açıp program kapanınca yok olmasını ve karsı programın buna yerel comport gibi bağlanıp haberleşmesini ve ben program içinden bu porttan veri almak ve göndermek istiyorum. Sanırım yeterinde acık anlatabilmişimdir.
Bu konu üzerinde daha önce çalışmış ve yardımcı olacak arkadaşlar var ise önerilerinizi dinlemek ve biraz yol kat etmek iyi olur.
Değerli zamanlarını ayırıp yardımcı olacak arkadaşlara şimdiden teşekkür ederim.
Benim yazdığınızdan anladığım bu iş bir "sürücü" işi. İngilizce ifadesi ile "driver" Eğer Windows işletim sistemi cihazı zaten kullanabiliyor ise neden böyle "kendim com port tanımlayacağım" diye uğraşıyorsunuz? Asıl yapılmak istenilen farklı birşey ama yazmamışsınız gibi.

Not olarak, driver windows işletim sisteminde dijital imzalı olmalı diye biliyorum. Sizin EXE uygulamanız "sürücü sınıfı" dijital imzaya sahip olmadığı sürece işletim sistemi çalışmasına izin vermeyecektir. Özellikle Windows 10 ve sonrası bu konuda daha katı diye biliyorum.
aegean
Üye
Mesajlar: 41
Kayıt: 24 Tem 2019 09:32

Re: Statik yada Dinamik Virtual Comport acma ve kontrol etme

Mesaj gönderen aegean »

Oncelikle konu ile İlgilendiğiniz için cok teşekkür ederim ertank bey.
Evet benim uygulama gelistirmeye calıstıgım sektör biraz farklı standart olan hiç bir sey bende ne yazık yok
Bu Comport ile haberleşecek programı ben yazmadım yoksa böyle bir sorunum olmaz dediğiniz gibi TCP ile çözerdim. Benim sorunum bazı özel programlar cihazlara ait comport a bağlanmak üzere hazırlanmış ve bu comport da bulunan cihaza yönetim veya cihazın maksadına göre komut gönderiyor ama bu cihazların değişimi firmware farkliliği veya başka maksatlar ile ben o programa virtual baska bir comport oluşturup onun üzerinden bağlanıp cihaz gibi davranıp onunla konuşan ve gerekli değişimleri yapıp yerel comport a bağlı asıl cihaza gönderen gerektiğinde iletişim protokolunu değiştirme işlemleri yapan ara uygulama hazırladım ve çalıstırdım. Bunu calıstırmak için com0com kullanarak işlem yaptıgımda onunla işimi goruyorum ama com0com da ticari bir program ve bunu ticari olarak dagıtmak için com0com un ticari surumunu satın almadan kullanamam. Zaten aynı makinada 3 4 cihaz olunca com port karmaşası olusuyor ve hata oluşma riski artıyor. Hepsinden ötesi her kurulum için com0com kurulumunu da yapmak ve yapılandırmak gerekiyor. Bu durumda portable olabilecek bir uygulama kurulum bağımlısı oluyor. Ben hiç bir kurulum yapmadan sadece bir ini dosyası koyarak portlarını uygulamanın kendisi açıp kullanma hazır hale getiren ve calışmaya başlayan bir uygulama haline getirmek istiyorum.
Sanırım şu an tam maksadımı anlatabilmişimdir.
Eğer siz veya bir başka arkadaşın bu konu üzerinde çalışmaları olduysa yardımlarınız rica ediyorum.
C# gibi bir dilde yazılıp sonra onu obj ve/vaya benzer yöntemler ile uygulamaya eklemek ve uygulama içinden method (fonksiyon) cagırarak cozme yolları da varsa onlar da işimi görebilir. Yeterki ben uygulama içinde, olusturmak, acmak, kapamak, özelliklerini değiştirmek, dinlemek ve yazmak gibi olayları yönetebileyim.
Tüm arkadaşlara iyi çalısmalar iyi günler dilerim.
Cevapla