我想在Windows平台上学习编程C++(本机)以进行RPC通信.我想学习服务器和客户端.我还想学习一些高级主题,如性能和安全性.
有什么好的推荐材料可以阅读?
(顺便说一下:我用Google搜索了一些,但是所有这些都太简短或与COM有关,我想学习没有COM的纯RPC编程.我正在使用VSTS 2008和C++.)
我将从RPC上的Platform SDK示例开始.
ASYNCRPC说明了使用异步远程过程调用的RPC应用程序的结构.它还演示了通知呼叫完成的各种方法.
CLUUID演示了如何使用客户端对象UUID来使客户端能够从远程过程的多个实现中进行选择.
DATA目录包含四个程序:
DUNION说明了歧视(非封装)的工会;
INOUT演示[in],[out]参数;
REPAS演示了represent_as属性;
XMIT演示了transmit_as属性.
DYNEPT演示了一个客户端应用程序,通过动态端点管理与服务器的连接.
FILEREP目录包含四个示例,说明开发人员如何编写简单文件复制服务,多用户文件复制服务,支持安全功能的服务以及使用RPC异步管道的服务.
手柄目录包含三个程序,AUTO,CXHNDL,USRDEF,其证明auto_handle,[的context_handle],和通用(用户定义的)处理,分别.
HELLO是"Hello,world"的客户端/服务器实现.
PICKLE目录包含两个程序:
PICKLP演示了数据过程的序列化;
PICKLT演示了数据类型序列化; 两个程序都使用[encode]和[decode]属性.
PIPES演示了管道类型构造函数的使用.
RPCSVC演示了使用RPC实现服务.
STROUT演示了如何在服务器上为二维对象(指针数组)分配内存,并将其作为[out] -only参数传递回客户端.然后客户端释放内存.此技术允许存根调用服务器,而无需事先知道将返回多少数据.
试试这个:
概观
技术参考 - 还描述了它是什么以及它是如何工作的