.net Ftpwebrequest是否使用本机windows ftp客户端?

.net Ftpwebrequest是否使用本机windows ftp客户端?,.net,ftpwebrequest,.net,Ftpwebrequest,我想知道.net Ftpwebrequest类是否在内部使用本机windows ftp客户端。或者.net framework有自己的客户端吗?FtpWebRequest不使用任何外部工具创建ftp连接。它使用相当“标准”的Windows API来实现这一点:如果您在 FtpControlStream.CreateFtpDataSocket(FtpWebRequest request, Socket templateSocket) 您可以看到它使用newsocket(…)来创建数据套接字 然后

我想知道.net Ftpwebrequest类是否在内部使用本机windows ftp客户端。或者.net framework有自己的客户端吗?

FtpWebRequest不使用任何外部工具创建ftp连接。它使用相当“标准”的Windows API来实现这一点:如果您在

FtpControlStream.CreateFtpDataSocket(FtpWebRequest request, Socket templateSocket)
您可以看到它使用
newsocket(…)
来创建数据套接字

然后,您可以按照调用链

FtpControlStream.CreateFtpListenerSocket(...)
FtpControlStream.BuildCommandsList(...)
CommandStream.SubmitRequest(...)
FtpWebRequest.TimedSubmitRequestHelper(...)
FtpWebRequest.SubmitRequest(...)
最后到了

FtpWebRequest.GetResponse(...)

您可能使用的。

您所说的“本机windows ftp客户端”是什么意思?@SriramSakthivel可能是System32目录中的ftp.exyes,ftp.exe。@NageshK则回答为否。这将是愚蠢、缓慢和更复杂的。@NageshK我不知道称它为“客户端”是否正确。这是一个图书馆。假设它独立于任何外部程序。