递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 2395|回复: 7
打印 上一主题 下一主题

[视窗] 命名管道每次读取数据长度不一

[复制链接]

213

主题

448

帖子

3013

积分

论坛元老

Rank: 8Rank: 8

积分
3013
QQ
跳转到指定楼层
楼主
发表于 2024-2-22 14:19:11 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式


我向命名管道写数据,为什么每次读出来的长度不一样啊,写进去的数据是一样的,可以看出命名管道写数据是不断叠加的,而我想每次写入都从管道0字节开始写
回复

使用道具 举报

411

主题

2517

帖子

8300

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8300
沙发
发表于 2024-2-22 22:16:25 | 只看该作者
我以前也是遇到这种情况,当时好像是吴总还是谁解释了就是这样。。我就弃用了,不好用这个管道。还是用发送消息的方式吧,我的解决办法是将当前主窗口的句柄写到本地文件,另外的程序读取该文件保存的句柄,两者以此发送消息沟通。
回复

使用道具 举报

69

主题

992

帖子

4478

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
4478
板凳
发表于 2024-2-23 11:19:18 | 只看该作者
shuimiao 发表于 2024-2-22 22:16
我以前也是遇到这种情况,当时好像是吴总还是谁解释了就是这样。。我就弃用了,不好用这个管道。还是用发送 ...

有进程通信专用的“内存映射文件”
回复

使用道具 举报

411

主题

2517

帖子

8300

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8300
地板
发表于 2024-2-23 13:41:46 | 只看该作者
hcwanz 发表于 2024-2-23 11:19
有进程通信专用的“内存映射文件”

刚才看了下,写数据竟然不能超过已映se内存的边jie。。这不是固定shi了吗,想要写更多数据怎么办?还有读数据,还需要指定长度,这还得预先在写数据的第一个整数(4字节)指定长度,读数据才能知道应该读入多少长度,徒增麻烦。而且也没有被写数据的事件,不知道什么时候应该去读。这样的话就是很麻烦,还不如专门使用发送消息封装一个内存通信的,随意写无限数据,还能读全部数据不需要指定尺寸,还有事件。
回复

使用道具 举报

69

主题

992

帖子

4478

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
4478
5#
发表于 2024-2-23 14:21:53 | 只看该作者
本帖最后由 hcwanz 于 2024-2-23 14:23 编辑
shuimiao 发表于 2024-2-23 13:41
刚才看了下,写数据竟然不能超过已映se内存的边jie。。这不是固定shi了吗,想要写更多数据怎么办?还有读 ...

这就是原始的c\c++难受的地方,其实像内存管理也是差不多的,只是吴总搞了个很方便的字节集,而映射则是就简单翻译封装了一下。
回复

使用道具 举报

411

主题

2517

帖子

8300

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8300
6#
发表于 2024-2-23 14:31:07 | 只看该作者
hcwanz 发表于 2024-2-23 14:21
这就是原始的c\c++难受的地方,其实像内存管理也是差不多的,只是吴总搞了个很方便的字节集,而映射则是就 ...

我决定把我以前的发送消息来通信的方式封装一个方便易用的进程通讯类出来,目前已知的都不好用
回复

使用道具 举报

15

主题

343

帖子

3855

积分

论坛元老

Rank: 8Rank: 8

积分
3855
7#
发表于 2024-2-24 00:11:49 | 只看该作者
期待大神的作品
回复

使用道具 举报

411

主题

2517

帖子

8300

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8300
8#
发表于 2024-3-10 19:40:33 | 只看该作者
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-27 10:08 , Processed in 0.095299 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表