Delphi işlevinin .net'den bir bayt dizisi üzerinde çalışmasının en iyi yolunu bulmakta zorlanıyorum.C# bayt dizisinden geçen delphi dll işlevini çağırın
procedure Encrypt(
var Bytes: array of byte;
const BytesLength: Integer;
const Password: PAnsiChar); stdcall; export;
C# kodu şöyle:
Delphi imza şöyle bayt dizisi bildirimi önce var
ve ref
belirtilmemesi
[DllImport("Encrypt.dll",
CallingConvention = CallingConvention.StdCall,
CharSet = CharSet.Ansi)]
public static extern void Encrypt(
ref byte[] bytes,
int bytesLength,
string password);
başarısız gibiydi, ama beri gereklidir Dizinin sadece içeriğini değil, dizinin içeriğini değiştirecek miyim?
Ayrıca nedense ben işe yaramaz Length(Bytes)
daha BytesLength
parametre kaldırırsanız işe BytesLength
parametre, Length(Bytes)
başlar ekleyin ama BytesLength
varsa, Delphi dizinin uzunluğunu almak gibi olamaz yanlış bir değer.