Delphi 使用Indy库IdHttp.Request.Post(字符串,TIdStream)未声明的TIdStream。无法识别IDOBJ和IdBaseObjs命名空间

Delphi 使用Indy库IdHttp.Request.Post(字符串,TIdStream)未声明的TIdStream。无法识别IDOBJ和IdBaseObjs命名空间,delphi,indy,Delphi,Indy,记录您的bl**dy RAD系统。TIdStream不再在任何地方声明。它也没有被使用。TIdCustomHTTP.Post的声明现在使用普通的旧TStream: 我指的是5161。在线文档显然没有更新以反映新的流策略 我通过对TIdStream\s*=的源代码进行正则表达式搜索了解到这一点。找不到任何内容,然后转到IdHTTP.pas中的TIdCustomHTTP声明 TStream是抽象的;你不能直接实例化它。使用适合您需要的子类。常用选项包括TFileStream、TMemoryStrea

记录您的bl**dy RAD系统。

TIdStream不再在任何地方声明。它也没有被使用。TIdCustomHTTP.Post的声明现在使用普通的旧TStream:

我指的是5161。在线文档显然没有更新以反映新的流策略

我通过对TIdStream\s*=的源代码进行正则表达式搜索了解到这一点。找不到任何内容,然后转到IdHTTP.pas中的TIdCustomHTTP声明


TStream是抽象的;你不能直接实例化它。使用适合您需要的子类。常用选项包括TFileStream、TMemoryStream和TStringStream。

您有源代码,不是吗?你可以自己看看上课的地点。他没有粗鲁。通过使用notepad++或其他工具,您将能够在源代码树中找到声明类的位置。例如DelphiIDE->Ctrl+F->Find in Files。不过,你必须把这个装置放在界面的“使用”部分。Indy的文档在很长一段时间内没有更新,这项工作正在进行中,但进展缓慢。IdSys和IdObj装置在几年前就已经从Indy淘汰,TIdStream类已经不存在了。现在有了IdStream.pas装置,但您不应该直接使用它。它定义了一个TIdStreamHelper类,用于在Delphi和.NET的不同流类中读取/写入数据,但IdGlobal.pas单元具有TIdStreamHelper的公共包装器,应该改用它。
procedure Post(AURL: string; ASource, AResponseContent: TStream); overload;