Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
C++ tan Delphi ye Çevrim
#1
Entegrasyonunu yaptığım EFT-POS yazılımındaki bcd çevrimi aşağıdaki şekilde;

void TransactionInfo( char * buffer, ...)
{
va_list args;
char tmp[512];
CString cs;

va_start(args, buffer);
vsprintf(tmp, buffer, args);
va_end(args);
cs = tmp;

m_listTransaction.AddString(cs);
}

TransactionInfo("DATE            : %02X/%02X/20%02X", pstTicket->bcdTicketDate[2], pstTicket->bcdTicketDate[1], pstTicket->bcdTicketDate[0]);
TransactionInfo("HOUR            : %02X:%02X:%02X" , pstTicket->bcdTicketTime[0], pstTicket->bcdTicketTime[1], pstTicket->bcdTicketTime[2]);

Yukarıdaki C++ kodunu delphiye nasıl çevirebiliriz ya da bu fonksiyonun yaptığı gibi bcd çevrimi yapabileceğimiz fonksiyonu nasıl yazabiliriz?
Cevapla
#2
Çevrimini bilmiyorum ama başka bir yöntem dll'e çevirip kendi uygulamanda kullanabilirsin.
WWW
Cevapla
#3
Başka bir dile çevirmenin pek sağlıklı olacağını sanmıyorum tekrar yazmak daha iyi olabilir
Don't fear the try!
Cevapla
#4
(09-06-2017, Saat: 10:27)witalihakko Adlı Kullanıcıdan Alıntı: Çevrimini bilmiyorum ama başka bir yöntem dll'e çevirip kendi uygulamanda kullanabilirsin.

Dll çevirme gibi bir durumum yok. Aksi Halde Tek Fonksiyon için Dll yazmam gerekecek.

(09-06-2017, Saat: 10:31)cudyfoster Adlı Kullanıcıdan Alıntı: Başka bir dile çevirmenin pek sağlıklı olacağını sanmıyorum tekrar yazmak daha iyi olabilir

Bu fonksiyon DateTime To ByteArray / ByteArray to DateTime konusunda da belittiğim bcd tarih ve saat dizilerini string tipine çeviriyor. Benim de ihtiyacım bu fonksiyonun delphi çevrimi ya da eşdeğerde bir fonksiyon. Uğraştım fakat bir çözüme ulaşamadım. Bcd çevrimi konusunda tecrübeli arkadaşların, hocalarımın yardımlarını bekliyorum. Teşekkür ederim.
Cevapla
#5
(09-06-2017, Saat: 10:32)erkankurtaga Adlı Kullanıcıdan Alıntı:
(09-06-2017, Saat: 10:27)witalihakko Adlı Kullanıcıdan Alıntı: Çevrimini bilmiyorum ama başka bir yöntem dll'e çevirip kendi uygulamanda kullanabilirsin.

Dll çevirme gibi bir durumum yok. Aksi Halde Tek Fonksiyon için Dll yazmam gerekecek.

(09-06-2017, Saat: 10:31)cudyfoster Adlı Kullanıcıdan Alıntı: Başka bir dile çevirmenin pek sağlıklı olacağını sanmıyorum tekrar yazmak daha iyi olabilir

Bu fonksiyon DateTime To ByteArray / ByteArray to DateTime konusunda da belittiğim bcd tarih ve saat dizilerini string tipine çeviriyor. Benim de ihtiyacım bu fonksiyonun delphi çevrimi ya da eşdeğerde bir fonksiyon. Uğraştım fakat bir çözüme ulaşamadım. Bcd çevrimi konusunda tecrübeli arkadaşların, hocalarımın yardımlarını bekliyorum. Teşekkür ederim.
Sadece algoritmik bir işlem ise çevirilebilir ama komple bileşenlere dayalı bir kod ise çevirmek zor gibi
Don't fear the try!
Cevapla
#6
Evet haklısınız sadece bir yöntem dediğim gibi. Tek fonksiyon için dll saçma olur Smile
WWW
Cevapla
#7
Bu fonksiyon, daha önce sorduğunuz dönüşüm işlemi ile ilgili değil. Sadece tarih ve saat değerlerinizi düzgün bir şekilde görünmesi için string'e çeviriyor.
There's no place like 127.0.0.1
WWW
Cevapla
#8
(09-06-2017, Saat: 14:30)SimaWB Adlı Kullanıcıdan Alıntı: Bu fonksiyon, daha önce sorduğunuz dönüşüm işlemi ile ilgili değil. Sadece tarih ve saat değerlerinizi düzgün bir şekilde görünmesi için string'e çeviriyor.

Evet haklısınız, ama aslında onun ile alakalı. Üreticinin c++ örneğinde buldum bu fonksiyonu. Bcd çevirimini aynı zamanda önceki konudaki dizileri bu fonksiyon yardımı ile stringe çeviriyor. Taksir edersiniz ki stringe çevrilirse tarih ya da saate çevirmek çok kolay. Fonksiyonu Delphiye çevirmeye çalıştım, fakat c++ örneğindeki gibi çalıştıramadım.

(09-06-2017, Saat: 12:01)cudyfoster Adlı Kullanıcıdan Alıntı:
(09-06-2017, Saat: 10:32)erkankurtaga Adlı Kullanıcıdan Alıntı: Dll çevirme gibi bir durumum yok. Aksi Halde Tek Fonksiyon için Dll yazmam gerekecek.


Bu fonksiyon DateTime To ByteArray / ByteArray to DateTime konusunda da belittiğim bcd tarih ve saat dizilerini string tipine çeviriyor. Benim de ihtiyacım bu fonksiyonun delphi çevrimi ya da eşdeğerde bir fonksiyon. Uğraştım fakat bir çözüme ulaşamadım. Bcd çevrimi konusunda tecrübeli arkadaşların, hocalarımın yardımlarını bekliyorum. Teşekkür ederim.
Sadece algoritmik bir işlem ise çevirilebilir ama komple bileşenlere dayalı bir kod ise çevirmek zor gibi

Sadece bcd çevirimi yapan bir fonksiyon. Bileşenler ile hiç alakası yok.
Cevapla
#9
Bence bir yerlerde hata yapıyorsunuz.

Burada yazdığınız fonksiyona bakılırsa;
bcdTicketDate[0] yılı gösteriyor (2000'den sonraki yıl). bcdTicketDate[1] ayı, bcdTicketDate[2] de günü gösteriyor. (Tarih formatını DD/MM/YYYY kabul ettim)

Ama sizin önceki sorunuzda bcdTicketDate içindeki değerler 70,119,85,120 olarak verilmiş. 
C++ fonksiyonunda bunlar hexadecimal'a çevrilmiş. Ama hexadecimal'a çevirsenizde DD/MM/YYYY formatına uymuyor. Çünkü 119 değerini gün yada ay kabul edip hexadecimal'a çevirdiğinizde 77 yapıyor ???
There's no place like 127.0.0.1
WWW
Cevapla
#10
(09-06-2017, Saat: 16:08)SimaWB Adlı Kullanıcıdan Alıntı: Bence bir yerlerde hata yapıyorsunuz.

Burada yazdığınız fonksiyona bakılırsa;
bcdTicketDate[0] yılı gösteriyor (2000'den sonraki yıl). bcdTicketDate[1] ayı, bcdTicketDate[2] de günü gösteriyor. (Tarih formatını DD/MM/YYYY kabul ettim)

Ama sizin önceki sorunuzda bcdTicketDate içindeki değerler 70,119,85,120 olarak verilmiş. 
C++ fonksiyonunda bunlar hexadecimal'a çevrilmiş. Ama hexadecimal'a çevirsenizde DD/MM/YYYY formatına uymuyor. Çünkü 119 değerini gün yada ay kabul edip hexadecimal'a çevirdiğinizde 77 yapıyor ???

bcdTicketDate Dizisi için tarih formatı dd/mm/20yy olarak gösteriyor kendini. Dizideki format YYMMDD. 4 Bytelık dizinin sadece ilk 3 byte ı tarih bilgisi içeriyor.

bcdTicketTime dizisi de HHMMSS . Bu dizi de tarih dizisi gibi ilk 3 byte saat bilgisi içeriyor. Bu iki dizi hakkında bildiğim ve anlatılan bunlar. Başka herhangi bir bilgiye ulaşamadım. Hexadecimale çevirip bir sonuş almaya çalışaym bende.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi İle Shopify Entegrasyonu narkotik 1 109 13-02-2025, Saat: 14:48
Son Yorum: Hayati
Photo Delphi 12.2ilginç bir ide hatası tuna 0 81 12-02-2025, Saat: 11:22
Son Yorum: tuna
  Delphi için yapay zeka kod yardımcısı eklentisi csunguray 13 653 05-02-2025, Saat: 20:13
Son Yorum: mrmarman
  Delphi Ide hatası Bay_Y 6 244 04-02-2025, Saat: 10:56
Son Yorum: Bay_Y
  Delphi 7 kullanıcısı yeni versiyona başlamalımıyım kadir344 2 149 26-01-2025, Saat: 10:35
Son Yorum: enigma



Konuyu Okuyanlar: 1 Ziyaretçi