一日一点RakNet(35)--Directory Delta Transfer

目录传输器概述

 

在目录之间自动发送不同文件的目录信息

       如果有允许用户修改的内容(user-moddable),DirectoryDeltaTransfer.h就显得非常有用了。例如,如果每一个服务器有一个/skins 目录,那么你就可以运行这个插件将目录下载到客户端上。每一个没有特殊skin的客户端都会接收到这个目录信息。在下载过程中,可以通过user-supplied回调获得下载过程中的提示信息。DirectoryDeltaTransfer实际传输文件依赖于FileListTransfer插件。

 

使用:

       1. 连接插件到系统中,并连接到远端系统。

       2. 服务器和客户端:调用directoryDeltaTransfer.SetFileListTransferPlugin(&fileListTransfer);

       3. 服务器:设置应用程序目录:directoryDeltaTransfer.SetApplicationDirectory(“c:\myGame”);

       4. 服务器:设置下载目录:directoryDeltaTransfer.AddUploadsFromSubdirectory(“skin”);

       5. 客户端:下载目录调用:directoryDeltaTransfer.DownloadFromSubdirectory(“skin”,“downloaded\skins”, true, serverAddress, &transferCallback, HIGN_PRIORITY,0);

       6. 客户端:等待毁掉成员函数OnFileProgress().如果onFileStruct->fileIndex等于了onFileStruct->setCount,那么下载就算是完成了。

       如果想要详细查看所有参数和可用的函数方法的详细信息,参考DirectoryDeltaTransfer.h头文件,以及Samples/DirectoryDeltaTransfer目录下的例子。

 

By 北洋小郭

转载请注明出处,请勿用于商业用途,谢谢!


你可能感兴趣的:(c,服务器)