代码之家  ›  专栏  ›  技术社区  ›  S L Bentall

在Delphi 10.1 Berlin中使用BDE API(BdiCopyTable)

  •  -2
  • S L Bentall  · 技术社区  · 8 年前

    以下代码使用Delphi5编译和工作,但不使用Delphi10.1 Berlin;

    function CopyTable(const tSource: TwwTable; const Destination: string): DBIResult;
    var
       pSourceTableName, pDestination: array[0..DBIMAXTBLNAMELEN] of char;
    begin
         tSource.Open;
         StrPCopy(pSourceTableName, tSource.TableName);
         StrPCopy(pDestination, Destination);
         Result := DbiCopyTable(tSource.DBHandle, False, pSourceTableName, nil, pDestination);
         tSource.Close;
    end;
    

    编译器报告[dcc32错误]SUPPORT1.PAS(3655):E2010不兼容类型:“PAnsiChar”和“Char的数组[0..260]两次。

    如何更改它以使其编译干净并按预期工作?

    1 回复  |  直到 8 年前
        1
  •  3
  •   Uwe Raabe    8 年前

    DbiCopyTable 期望 安西卡尔 因此,您应该相应地声明两个字符数组。