这是我试图调用的函数:
function TPipeClient.Write(var Buffer; Count: Integer): Boolean;
我有另一个类是要写入的 tMessages 队列:
tMessage = class
public
function getData(): PByte; virtual; abstract;
function getLen(): integer; virtual; abstract;
end;
因此,当我尝试调用时: TPipeClient.Write 像这样:
FClient.Write(queue[pos].getData(), queue[pos].getLen());
(Fclient 是一个 tClientPipe,队列是 tMessage 的数组)
我收到一条错误消息,说没有匹配的重叠版本,所以我做了一个:
FClient.Write(@(queue[pos].getData()), queue[pos].getLen());
我得到另一个编译错误:需要变量。
关于如何投射它以便它通过并发送出去的任何想法?