我有应用服务器(服务器.py)和C++作为客户端(客户端.exe). 客户端.exe将变量发送到服务器.py通过“命名管道”。在

问题是当我从客户端.exe在服务器.py只产生“D”(只发送第一个字符)。在

有人能帮我吗??在

C++ +<

服务器.pyfrom ctypes import *

PIPE_ACCESS_DUPLEX = 0x3

PIPE_TYPE_MESSAGE = 0x4

PIPE_READMODE_MESSAGE = 0x2

PIPE_WAIT = 0

PIPE_UNLIMITED_INSTANCES = 255

BUFSIZE = 4096

NMPWAIT_USE_DEFAULT_WAIT = 0

INVALID_HANDLE_VALUE = -1

ERROR_PIPE_CONNECTED = 535

MESSAGE = "Default answer from server\0"

szPipename = "\\\\.\\pipe\\mynamedpipe"

def ReadWrite_ClientPipe_Thread(hPipe):

chBuf = create_string_buffer(BUFSIZE)

cbRead = c_ulong(0)

while 1:

fSuccess = windll.kernel32.ReadFile(hPipe, chBuf, BUFSIZE,

byref(cbRead), None)

if ((fSuccess ==1) or (cbRead.value != 0)):

print chBuf.value

cbWritten = c_ulong(0)

fSuccess = windll.kernel32.WriteFile(hPipe,c_char_pc_char_p(MESSAGE),len(MESSAGE),byref(cbWritten),None)

else:

break

if ( (not fSuccess) or (len(MESSAGE) != cbWritten.value)):

print "Could not reply to the client's request from the pipe"

break

else:

print "Number of bytes written:", cbWritten.value

windll.kernel32.FlushFileBuffers(hPipe)

windll.kernel32.DisconnectNamedPipe(hPipe)

windll.kernel32.CloseHandle(hPipe)

return 0

def main():

THREADFUNC = CFUNCTYPE(c_int, c_int)

thread_func = THREADFUNC(ReadWrite_ClientPipe_Thread)

while 1:

hPipe = windll.kernel32.CreateNamedPipeA(szPipename,PIPE_ACCESS_DUPLEX,PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT, PIPE_UNLIMITED_INSTANCES, BUFSIZE, BUFSIZE, NMPWAIT_USE_DEFAULT_WAIT,None)

if (hPipe == INVALID_HANDLE_VALUE):

print "Error in creating Named Pipe"

return 0

fConnected = windll.kernel32.ConnectNamedPipe(hPipe, None)

if ((fConnected == 0) and (windll.kernel32.GetLastError() == ERROR_PIPE_CONNECTED)):

fConnected = 1

if (fConnected == 1):

dwThreadId = c_ulong(0)

hThread = windll.kernel32.CreateThread(None, 0, thread_func, hPipe, 0, byref(dwThreadId))

if (hThread == -1):

print "Create Thread failed"

return 0

else:

windll.kernel32.CloseHandle(hThread)

else:

print "Could not connect to the Named Pipe"

windll.kernel32.CloseHandle(hPipe)

return 0

if __name__ == "__main__":

main()

客户端.cpp

^{pr2}$

python 服务端与c++客户端通讯_在C++与Python之间通信(IPC)相关推荐

  1. python 服务端与c++客户端通讯_[原创]python socket 服务端 与 c++客户端通讯,发包内容加密,支持大文件,并发...

    代码经过网络搜索,综合算是原创吧.py脚本为服务端 项目文件在 https://github.com/jinjie412/service_client_socket import socketserv ...

  2. python 服务端框架_GitHub - edisonlz/fastor: Python服务端开发框架-极易上手,超出你的想象!...

    欢迎使用Python 服务端开发框架 Fastor Fastor是一款专为Python 打造的API与后端管理系统,通过精心的设计与技术实现,集成了大部分稳定开发组件,memcache , redis ...

  3. UE4 TCP通信 (UE客户端与网络调试助手服务端、python服务端通信)

    目录 一.使用UE4建立TCP客户端 二.使用网络调试助手建立服务端 三.基于网络调试助手的服务端与UE客户端通信 四.基于python的TCP服务端与UE客户端通信 一.使用UE4建立TCP客户端 ...

  4. python 和php的数据通信_python服务端 和 php客户端通信一

    1 通过thrift 但是数据量太大thrift不支持 下载thrift包安装,比如我的是/usr/local/thrift-0.8.0 /usr/local/thrift-0.8.0/lib类库 / ...

  5. netty tcp服务端主动断开客户端_「Netty核心技术」6-ChannelPipeline源码

    ChannelPipeline是Channelhandler的容器,它负责ChannelHandler的管理和事件拦截与调度. 土话: ChannelPipeline就是用来管理Channelhand ...

  6. websocket服务端和html客户端进行二进制数据交互

    一.概念和理论理解 1.HTTP HTTP 是基于请求响应式的,即通信只能由客户端发起,服务端做出响应,无状态,无连接. 无状态:每次连接只处理一个请求,请求结束后断开连接. 无连接:对于事务处理没有 ...

  7. Python 服务端编写

    这里写自定义目录标题 Python 服务端步骤以及代码 效果以及实现的功能 了解TCP的内部工作过程 首先编写简单UI界面 转换成PY文件(就是界面文件) TCP 服务端初始化(即Socket初始化) ...

  8. ssm配置socket_ssm框架中集成websocket实现服务端主动向客户端发送消息

    找了很多配置文档及实例说明,也还是没能成功,最终在csdn博客中发现了基于stomp的消息推送的文章, 下面整理自csdn博客,https://blog.csdn.net/u013627689/art ...

  9. 服务端渲染vs客户端渲染到前后端同构

    关于服务端渲染与客户端渲染的优劣,互联网上已经有过很多的文章进行过分析,在这里我谈一下我个人的见解. 首先,还是来老生常谈一下关于两种渲染方式的主要优劣: 服务端渲染(仅列出当下最突出的优劣): 优: ...

最新文章

  1. 【数据库】mysql常用的数据类型
  2. FreeModbus离散量输入
  3. python-redis连接管理
  4. POJ1182 食物链---(经典种类并查集)
  5. Python for Informatics 第11章 正则表达式五(译)
  6. 12.企业应用架构模式 --- 对象-关系结构模式
  7. sqlite数据库语句和mysql的语句_【玩转SQLite系列】(一)初识SQLite,重拾sql语句
  8. (转帖出自ESRI BBS)有关于GIS思想
  9. 当不知轴承型号时如何寻找轴承故障频率_知课堂 | 快速计算轴承特征频率
  10. 快速学习Ant Design-简介
  11. 微信小程序通过公众号(服务号)推送通知或提醒步骤及代码(一,获取推送前所需信息)
  12. python黑白图片上色_百度AI攻略:黑白图片上色
  13. Excel2021单元格怎么做下拉菜单
  14. group python 读hdf5_HDF5 文件及 h5py
  15. Pytorch、TorchVision、Python、Jetpack版本匹配问题
  16. 基于角色管理的系统访问控制
  17. CAJ转PDF,仅需5秒还免费,PDF文字还能复制
  18. C++循环语句使用(while for do while)及break continue goto的使用
  19. Allegro 过孔绘制
  20. Docker镜像瘦身

热门文章

  1. MySQL error 1477_mysql_error.md
  2. win10无法查看计算机名,win10如何查看计算机名字
  3. 学妹靠这个学会硬件开发入职华为,今天搞到100个免费名额!
  4. 计算机技能需求新排名:C语言仅排第 8,第 1 名你想不到!
  5. python3.7安装包百度云_Python-3.7.0软件安装包以及安装教程
  6. 计算机网络和传统电话网络的最大区别是,传统电话和网络电话有什么区别
  7. java字符串表表容量_java – 我可以使用什么符号表来存储~50 mil的字符串,快速查找而不会耗尽堆空间?...
  8. MISC-BUUCTF-9题-九连环-佛系青年等
  9. centos 下载oracle_Linux镜像下载大全
  10. opcua客户端实现断线重连_PLCopen amp; OPC UA信息模型