社区
C++ 语言
帖子详情
如何用管道实现程序与程序之间的通信?
cwbcwb505
2008-07-10 06:34:30
给个小例子即可,比如:程序1给程序2发送一个字符串“hello”,程序2接收并把它从屏幕上输出
...全文
112
3
打赏
收藏
如何用管道实现程序与程序之间的通信?
给个小例子即可,比如:程序1给程序2发送一个字符串“hello”,程序2接收并把它从屏幕上输出
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lvshaoqing
2008-07-11
打赏
举报
回复
hFile=CreateFile("1.txt", GENERIC_WRITE | GENERIC_READ, 0,
NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
DWORD dw=GetLastError();
MessageBox("File could not be opened.");
CString str;
str.Format("%s%d", str, dw);
MessageBox(str);
return(FALSE);
}
DWORD dw;
WriteFile(hFile,"00000000000000000",100,&dw,NULL);
//DWORD dwFileSize = GetFileSize(hFile, NULL);
hFileMap=CreateFileMapping(hFile, NULL, PAGE_READWRITE,
0, 0, // 如果该文件小于设定的大小,本函数将扩展该文件的大小,
// 使磁盘上的文件变大。这样当以后将该文件作为内存映射
// 文件使用时,物理存储器就已经存在了。
"MyContent"// 这个文件映射对象的名字用于与其他进程共享该对象,这里我们还用不到。
);
if (hFileMap == NULL)
{
DWORD dw=GetLastError();
CString str;
str.Format("%s%d", str, dw);
MessageBox("File map could not be opened.");
MessageBox(str);
CloseHandle(hFile);
return(FALSE);
}
/*pvFile = MapViewOfFile(hFileMap, FILE_MAP_WRITE, 0, 0, 0);
if (pvFile == NULL)
{
MessageBox("Could not map view of file.");
CloseHandle(hFileMap);
CloseHandle(hFile);
return(FALSE);
}*/
cwbcwb505
2008-07-11
打赏
举报
回复
老兄,能说下内存映射是怎么操作的吗?
谢谢!
herculeszc
2008-07-10
打赏
举报
回复
Copdata
内存映射
socket
进程的
管道
通信
编制一段
程序
,
实现
进程的
管道
通信
,使用系统调用pipe()建立一个
管道
文件;两个子进程P1和P2
进程的
管道
通信
编制一段
程序
,
实现
进程的
管道
通信
,使用系统调用pipe()建立一个
管道
文件;两个子进程P1和P2 分别向
管道
各写一句话: Child1 is sending a message! Child2 is sending a message! 而父进程则从
管道
中读出来自于两个子进程的信息,显示在屏幕上。要求父进程先接收子进程P1发来的 消息,然后再接收子进程P2发来的消息。
命名
管道
实现
点对点聊天
程序
利用命名
管道
实现
本机两个进程
之间
通信
。一个服务器,一个客户端。可以通过修改
管道
的名字
实现
网络
通信
(参照
管道
的命名方法),并且可以通过修改服务器创建
管道
时的参数,
实现
服务器与多个客户
之间
的的
通信
。 相对于Socket编程,通过命名
管道
的
实现
方法更简单,尤其适用于客户端少且数据量大的场合,而且在单机不同进程间
通信
方面也比用Socket更优。
WCFMessenger,一个wcf的聊天
程序
WCFMessenger,一个wcf的聊天
程序
讨论:http://bbs.csdn.net/topics/390435061
实现
一个
管道
通信
程序
2)
实现
一个
管道
通信
程序
由父进程创建一个
管道
,然后再创建三个子进程,并由这三个子进程利用
管道
与父进程
之间
进行
通信
:子进程发送消息,父进程等待三个子进程全部发完消息后再接收信息。
通信
的具体内容可根据自己的需要随意设计,要求能试验阻塞型读写过程中的各种情况,测试
管道
的默认大小,并且要求利用Posix信号量机制
实现
进程间对
管道
的互斥访问。运行
程序
,观察各种情况下,进程实际读写的字节数以...
linux利用
管道
实现
进程
通信
,Linux 利用
管道
实现
父子进程
之间
的
通信
这学期操作系统课程实践的实验内容,相对比较容易。主要是掌握无名
管道
的用法和利用信号量
实现
进程间资源的互斥使用。题目要求由父进程创建一个
管道
,然后再创建3个子进程,并由这三个子进程利用
管道
与父进程
之间
进行
通信
:子进程发送消息,父进程等三个子进程全部发送完消息后再接受消息。
通信
的具体内容可根据自己的需要随意设计,要求能试验阻塞型读写过程中的各种情况,并能要
实现
进程间对
管道
的互斥访问。运行
程序
,观察各种...
C++ 语言
65,206
社区成员
250,519
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章