Delphi 相当于 php 中的 “fsockopen” 函数是什么?


What is Delphi equivalent to "fsockopen" function in php?

在php中,Delphi等同于"fsockopen"函数是什么?

在 PHP 手册中:

resource fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr     [, float $timeout = ini_get("default_socket_timeout") ]]]] )
Initiates a socket connection to the resource specified by hostname.

我的代码完全是:

function accountcreate($username, $password, $connection, $bandwidth, $disabledate,  $disabletime)
{
$adminpassword='';
$adminport=82;
$proxyaddress='127.1.1.1';
$fp = fsockopen($proxyaddress, $adminport, &$errno, &$errstr, 1000);
if(!$fp) 
{
        echo "$errstr ($errno)<br>'n";
} 
else 
{
    $url_ = "/account";
    $url = "add=1"."&";
    .
    .
    $url = $url."userid=-1";
    $len = "Content-Length: ".strlen($url);
    $auth = "Authorization: Basic ".base64_encode("admin:".$adminpassword);
    $msg = "POST ".$url_." HTTP/1.0'r'nHost: ".$proxyaddress."'r'n".$auth."'r'n".$len."'r'n"."'r'n".$url;
    fputs($fp,$msg);
    echo $msg;
    fclose($fp);
}

该代码在CCPROXY中创建一个新帐户。

也许看看Delphi附带的Indy组件(假设至少是Delphi7)。 您将需要 :

TIdTCPConnection 文档

它包含一个IOHandler属性 (TIdIOHandler),您可以在其中指定 fsockopen 中使用的参数:

TIdTCPConnection.IOHandler Property

TIdIOHandler 文档

然而,正如其他人所指出的,通过查看PHP代码中的大局,也许使用更高级别的工具实现其功能,如TIdHTTP,你可能会得到很好的服务:

TIdHTTP 文档