Tôi muốn tạo một giao diện, nhưng tôi không biết điều gì đó.Có phải OleVariant có thể sử dụng cho tham số ngoài trong DLL proc không?
Có phải là OleVariant
"tiêu chuẩn" để chứa chuỗi "chuẩn" - để chuyển và trả lại không?
function Any(Input : OleVariant; out Output : OleVariant) : integer; stdcall;
Mặt khác có thể là .NET, C# hoặc C++ hoặc Delphi.
Vì vậy, họ có thể trả về một số kết quả "chuỗi" trong OleVariant
mà không có tôi vượt qua một bộ đệm có kích thước được xác định trước cho kết quả?
Sử dụng WideString để truyền các biến chuỗi và tự khắc phục sự cố. Có một cái nhìn [ở đây] (http://stackoverflow.com/questions/8414972/delphis-sharemem-when-it-is-not-needed) cho một số con trỏ bổ sung –
OleVariant sẽ * không * chứa một chuỗi "chuẩn" (nếu chuỗi chuẩn là chuỗi Delphi). Khi bạn gán một chuỗi cho một OleVariant chuỗi sẽ được chuyển đổi thành một "WideString". –