PChar ve string değişkenler

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
varyemez
Üye
Mesajlar: 262
Kayıt: 01 Oca 2009 11:00
Konum: Bursa
İletişim:

PChar ve string değişkenler

Mesaj gönderen varyemez »

Merhaba , bu PChar ,PAnsiChar , PWideChar gibi değişkenlerle başım dertte..
dışardan aldığım bir DLL i kullanmam gerekiyor orada orijinal help dosyasında

void DMSetMessage(LPCTSTR Message); şeklinde bir tanımlama yazmış. ben bunu delphide kullanıtken

procedure DMSetMessage(Message: PChar); stdcall; far; external 'DataMatrixWin32.dll' name 'DMSetMessage';

olarak tanımlıyorum. kullanırken de , örneğin
DMSetMessage (PAnsiChar('01086997905706062114081007440217'+#29+'17111130109ETSA79001')); veya

DMSetMessage (PAnsiChar(edit1.text+#29+edit2.text)); // arada asc 29 mutlaka olacak
gibi kullanırsam delphi 2007 de sorunsuz derleniyor ve çalışıyor. ama delphi XE de ikinci yazdığım ifade derlenmiyor

öte yandan edit1 ve edit2 deki değerleri string tipte bir alan olarak yazarsam yine çuvallıyor mesela:

var
deger1,deger2:string ;// diyelim

deger1:='01086997905706062114081007440217';
deger2:='17111130109ETSA79001'; olsun

DMSetMessage (PAnsiChar(deger1+#29+deger2)); // bu derlenmiyor

deger1 deger2 sadece rakam ve büyük harflerden ibaret 40 karakter kadar uzunlukta olabilen string..

nasıl bir yol izleyebilirim
Cevapla