indy相关内容
当我知道我希望从客户端获得多少字节时(在此代码中为100),我遇到了这种情况.如果客户不给我100,我根本就不需要此数据包,因为它已损坏. 当客户端提供少于100个字节并断开连接时,我遇到了这种情况.在这种情况下,我捕获到异常,并且一切都会好起来,除了在此异常之后,我的 ServerTCPExecute 被不连续地调用了很多次.没有其他任何客户端连接.为什么会这样呢?如果我这样做 TIdYa
..
2年前,我为使用Delphi 7和Indy的人通过Internet发送和接收一些数据编写了一个简单的客户端/服务器程序.我使用 TIdFTP 连接到他们的服务器并在其上获取并放置数据. 它运行了2年.今天,他们已经在另一个城市开设了另一个办公室,他们想将该程序复制到他们的新办公室计算机上,但是该程序在那儿不起作用. 程序成功连接,但无法读取目录列表,也无法放入或获取数据.如果它尝试将文
..
最近,我发现IdHTTPProxyServer自动将所有HTTP/1.1请求更改为HTTP/1.0请求.对我来说有点奇怪,因为我认为代理服务器不应更改HTTP版本.有什么方法可以强制代理服务器不更改HTTP版本? 解决方案 TIdHTTPProxyServer 目前不支持HTTP 1.1.更改HTTP版本的行为是硬编码的,因为 TIdHTTPProxyServer 实际上并没有按原样传递客
..
我正在使用delphi XE中的TIdCmdTCPServer开发概念验证应用程序. 我的代码似乎有问题,因为只有第一个命令有效.如果我重复相同的命令,它将“超时".请参阅下面的客户端代码清单. 这是我的命令处理程序: 过程TForm1.IdCmdTCPServer1CommandHandlersGetDateTimeCommand(ASender:TIdCommand);开始ASe
..
我正在尝试使用SHA-256加密功能,但没有成功. 我需要获取字符串和文件的哈希.我正在使用Delphi 10.1 Berlin和Indy for Hash. 我的代码: 使用System.Classes,IdHashSha,System.SysUtils;函数GetHashF(_filename:string):字符串;变种sha:TIdHashSHA256;fs:TFileStr
..
我找一个例子,如何从服务器接收文件(我使用Indy)我想向服务器发送一些需求 在客户端上: MyIdTCPClient.IOHandler.WriteLn('SEND_FILE');MyIdTCPClient.IOHandler.WriteLn('1.XLS'); 在服务器上 过程TServerMainForm.IdTCPServerExecute(AContext:TIdCont
..
我正在尝试编写一个服务器和一组与该服务器通信的客户端.服务器将维护不同客户端的状态,并允许它们在状态更改时向中央服务器发出警报.专业客户将允许控制其他连接的客户. 我将服务器作为TIdCmdTCPServer,并且客户端(目前)使用TIdTCPClient连接. 如果客户端正在发送和接收命令,它们是否应该使用TIdCmdTCPClient?我已经读过CmdTCPServer和CmdTC
..
我有这个完全剥离的delphi代码,该代码基本上登录到服务器,并将cookie保存在 global Cookie管理器,然后在线程中上传文件(使用Delphi 2010 + Indy 10.4736) 每个线程读取全局cookie管理器并上传文件.服务器端,我将PHP与 CodeIgniter 一起使用. 一切正常,除了CodeIgniter在配置中具有此 sess_time_to_u
..
我有一台具有几个不同静态IP的机器.是否可以通过TIdHTTP(印地语)为HTTP请求选择传出IP地址? 解决方案 较新版本的Indy具有BoundIP. idHttp1.BoundIP := '144.33.34.212';
..
我正在尝试使用Indy TCP组件将TStringStream从客户端发送到服务器,然后将其从服务器发送回客户端. 这是我的客户代码: var Jpg: TJPEGImage; StringStream: TStringStream; strcams, StringImageData: String; byt, i: integer; procedure SendCo
..
我必须为普通的TCP服务器提供SSL前端,所以我正在制作一个“泵"应用程序,该应用程序将提供与外部的SSL连接,而原始服务器可以保持普通状态. 我正在尝试使用Indy组件来满足我的SSL需求,但似乎无法从SSL端口获取任何数据.我将TIdTCPServer.OnExecute分配给以下事件处理程序: procedure TForm1.IdTCPServer1Execute(AConte
..
我知道有很多Indy线程,但是我找不到适合我的情况的线程. 我已获得一个包含用户名和密码形式的URL.然后,该操作将作用于URL/reports.php上,该URL/reports.php上有多个超链接. 这些链接中的每个链接都将定向到带有URL变量的页面,例如Reports.php?report = variablename,可立即开始下载. 到目前为止我的想法: pro
..
我有一个客户端和一个可以正常通信的服务器应用程序,服务器中有一个TIdCmdTCPServer,客户端中有一个TIdTCPClient. 客户端必须在服务器中进行身份验证,客户端向服务器询问最新版本信息,并下载所有更新和其他通信.与TIdTCPClient.SendCmd()和TIdTCPClient.LastCmdResult.Text.Text的所有通信. 这样,服务器接收命令和答
..
考虑使用Borland 2007和Indy UDP服务器和客户端的以下最小程序: struct DATA_PACKAGE { int t; int x; int y; }; void __fastcall TForm1::Button1Click(TObject *Sender) { DATA_PACKAGE a; a.t = 3; a.x = 2
..
我无法将iOS应用发布到AppStore. Delphi 10.1.2 Berlin,iOS64,Win 8.1. 我从苹果那里收到了下一条信息: 感谢您的回复. 请确保您的应用与IPv6网络兼容. 测试应用程序的IPv6兼容性的最简单方法是在Mac上设置本地IPv6网络.然后,您可以从iOS设备连接到网络以测试IPv6兼容性. 请按照支持IPv6 DNS64/
..
我目前正在开发客户端服务器应用程序,但是我想澄清一些有关以下内容的信息. 我的idtcpserver绑定IP地址(127.0.0.1、192.168.1.1或我的公共IP)必须是什么 我使用IPconfig对其进行了检查,它回复了我192.168.1.1;但是我已经使用我的家用adsl路由器(单端口)连接到了互联网. 我已经为我的客户应用程序分配了 idtcpclient.
..
我想在TIdHtttp上使用PUT上传文件.我从雷米·勒博(Remy Lebeau)找到了一个答案,说不使用PUT,而是使用POST. 但是,由于我使用的是第三个API,因此我无法执行此操作,并且它指定我需要使用PUT.如果我尝试使用POST,它将返回一条消息,提示不允许使用该方法. 基本上,我正在尝试执行以下操作: Response := TStringStream.Creat
..
根据此线程(以及源代码中的各种提示,如变量名),Indy支持获取gmail标签,但不设置或删除它们.但是,到目前为止,此功能似乎尚未记录.谁能帮我填写有关如何使用Imap检索Gmail标签的详细信息? 我应该调用哪个函数来检索标签并让Indy为我解析结果?尽管我当然可以手动调用SendCmd()来请求标签("C2 UID FETCH 92(X-GM-LABELS)"),类似于我手动设置/删除
..
我遇到如下错误: "IndyProtocols5不使用或不支持IdSSLOpenSSLHeaders." 当尝试在我的Delphi5上安装Indy 9或10时,发现对其他人来说这是一个问题.这将导致异常: “无法加载SSL库" 使用IdHttp.IOHandler时. 我继承的应用程序包括许多不受支持的D5组件,不幸的是,升级到D6 +超出了我的技能范围.我想最初使用
..
我们有一个Indy(版本10.6.1.5235)TIdHttpServer“服务",在Delphi 2007中已经使用了很多年.在最新的Windows Update(KB4338815和KB4338830)之后,我们注意到当TIdHttpServer设置为false时,该服务将冻结. 我已包含创建TIdHttpServer的源代码.在我们的服务“停止"处理程序中,将 IdHttpServer
..