⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 263.htm

📁 好书啊!很好哦
💻 HTM
字号:
<!-- saved from url=(0022)http://internet.e-mail -->
<html>
<head>
<title>用TCP/IP做文件续传                                </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="inc.css">
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#000000" vlink="195434" alink="195434">

<table width="621" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr>
      <td width="621"><a href="http://www.CoDelphi.com"><img src="images/logo.gif" border="0" width="153" height="60"><img src="images/bigbanner.gif" border="0" width="468" height="60"></a></td>
    </tr>
  </table><br>
<br>
<table width="621" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr> 
    <td align="left" valign="top" class="font9" height="155"> 
      <div align="center" class="btitle">用TCP/IP做文件续传                                <br>
        <br>
      </div>
      <div align="center"><strong>Codelphi.com                                      </strong></div>
       
      <b><br>
       摘 要</b>:                                                  <br>
      <b> 关键字</b>:续传                                               <br>
      <b> 类 别</b>:网络                                               
      <hr size="1" width="100%">
      <span class="content"><br><br>利用 TWinSocketStream 可以做到.<br><br>TServerWinSocket serverSocket;<br>TClientWinSocket clientSocket<br>TFileStream inFile, outFile;<br>// 假设各 Stream 都己 created<br><br>// 在 Server 端<br>// Client send 一个命令告知 Server 要由 536 bytes 开始传<br>&nbsp;&nbsp;inFile.Position := 536;<br>&nbsp;&nbsp;wtih TWinSocketStream.Create(serverSocket, 60000) do<br>&nbsp;&nbsp;begin<br>&nbsp;&nbsp;&nbsp;&nbsp;CopyFrom(inFile, inFile.Size - inFile.Position + 1);<br>&nbsp;&nbsp;&nbsp;&nbsp;Free;<br>&nbsp;&nbsp;end;<br><br>// 在 Client 端 OnReadEvent 中<br>&nbsp;&nbsp;memStream = TMemoryStream.Create;<br>&nbsp;&nbsp;memStream.Size = TOTAL_FILE_SIZE;<br>&nbsp;&nbsp;memStream.Position := 0;<br>&nbsp;&nbsp;socketStream := TWinSocketStream.Create(clientSocket, 60000) do<br>&nbsp;&nbsp;if socketStream.WaitForData(60000) then // give the client 60 seconds writing<br>&nbsp;&nbsp;&nbsp;&nbsp;socketStream.Read(PCharArray(memStream.Memory)^, TOTAL_FILE_SIZE)<br>&nbsp;&nbsp;memStream.Position := 0;<br>&nbsp;&nbsp;outFile.Position := 536;<br>&nbsp;&nbsp;outFile.CopyFrom(memStream);<br><br>// 释放全部的对象</span> 
      <table border="0" cellspacing="0" cellpadding="1" class="font9" align="center" width="100%">
        <tr align="left" valign="middle" bgcolor="195434"> 
          <td height="1"></td>
        </tr>
      </table>
     
    </td>
  </tr>
  <tr> 
    <td bgcolor="#C9C9C6" height="2"></td>
  </tr>
</table>
<div align="center"><br>
  中文开发在线<a href="http://www.codelphi.com" target="_blank">www.codelphi.com</a>授权使用。
</div>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -