Taguj wątki, bo nikt nie będzie się domyślał o jaki język Ci chodzi; Po nicku jedynie można skapować się...
DLL Delphi napisał(a)
Przekazywanie pomiędzy DLL a programem, bez użycia ShareMem musi się odbywać poprzez PChar lub ShortString.
No tak, ale czemu nie użyjesz ShareMem
..?
DLL Delphi napisał(a)
A co jeśli przekażę PChar a w środku skonwertuje sobie to do String i dalsze przetwarzanie będzie na tym typie string ? Czy to będzie bezpieczne ?
DLLka jedynie zapisze coś do pliku jako wynik.
Jeżeli skonwertujesz łańcuch z PChar
do String
wewnątrz procedury / funkcji w bibliotece, to raczej nie będzie to miało znaczenia; Jeżeli miałbyć odsyłać zmodyfikowany łańcuch z powrotem do aplikacji to bez modułu ShareMem
musiałbyś konwertować go do PChar
i wysłać, zapisać do parametru czy zwrócić przez rezultat funkcji;
Jeżeli chcesz kombinować to kombinuj, ale zawsze możesz także w programie korzystać z PChar
i nie będziesz się musisał pocić nad konwertowaniem; Z resztą jeżeli nie będziesz zwracał łańcucha do programu tylko zapisywał go do pliku, to nawet wewnątrz procedury w bibliotece nie będziesz musisał go konwertować na String
, tylko zapiszesz go albo bezpośrednio, albo rzutując na typ String
(jeżeli jakieś metody będą posiadały argumenty typu String
);