上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 61 下一页

2008年5月28日

《UNIX网络编程 卷2》读书笔记(四)

摘要: /**//* include globals */#include "unpipc.h"#define MAXNITEMS 1000000#define MAXNTHREADS 100 /**//* globals shared by threads */int nitems; /**... 阅读全文

posted @ 2008-05-28 14:52 Phinecos(洞庭散人) 阅读(959) 评论(0) 推荐(0) 编辑

《UNIX网络编程 卷2》读书笔记(三)

摘要: 多个生产者,单个消费者,只考虑生产者之间的同步互斥 #include "unpipc.h"#define MAXNITEMS 1000000#define MAXNTHREADS 100int nitems; /**//* read-only by producer and consumer */struc... 阅读全文

posted @ 2008-05-28 13:14 Phinecos(洞庭散人) 阅读(1193) 评论(0) 推荐(0) 编辑

2008年5月27日

基于Mozilla Thunderbird的扩展开发(八)---进程间通信之Socket篇(续)

摘要: 最近遇到这样一个需求:在我们的MFC程序中控制Thunderbird。拿到这个奇怪的需求后,有了这么几个想法:1)用全局钩子试着勾住Thunderbird,可细想好像不对。2)用spy++探查点击Thunderbird的各个菜单,按钮时触发的事件,总归是win32平台上跑的程序,归根到底还是事件触发,从理论上说应该是可以在我们自己的MFC程序中模拟目标程序中的各个事件触发。 但接触到Mozilla的socket方面的知识后,放弃了上面的想法,改用socket通信来实现此需求。一来Thunderbird源代码可以自行修改,因此可以加入一些代码使之成为一个类似HTTP服务器的服务器端程序,二来使用socket进行连接与语言无关,因此C++的程序可以和javascript的程序完成通信,但缺点也很明显,要占用端口,只涉及到本地机器的通信却使用了socket这样的网络通信机制。 阅读全文

posted @ 2008-05-27 22:19 Phinecos(洞庭散人) 阅读(2364) 评论(4) 推荐(0) 编辑

《UNIX网络编程 卷2》读书笔记(二)

摘要: 如何知道进程在一个空消息队列中放入一个消息?如果阻塞在msgrcv调用中,则除了等待无法做其他事情,如果给msgrcv指定非阻塞标志(IPC_NOWAIT),尽管不阻塞了,但必须持续调用该函数来确定何时有消息到达,也就是采用轮询方式(polling),Posix消息队列允许异步事件通知来通知何时有消息放入到某个空消息队列中,有2种方式: 1)产生一个信号 2)创建一个线程执行一个指定函... 阅读全文

posted @ 2008-05-27 16:27 Phinecos(洞庭散人) 阅读(2269) 评论(0) 推荐(0) 编辑

2008年5月26日

《UNIX网络编程 卷2》读书笔记(一)

摘要: 1,获取Posix IPC的名字 #include "unpipc.h"char* px_ipc_name(const char* name){ char* dir,*dst,*slash; if((dst = malloc(PATH_MAX))==NULL) return NULL;//分配失败 if((dir=getenv("PX_IPC_NAME"))==NU... 阅读全文

posted @ 2008-05-26 21:50 Phinecos(洞庭散人) 阅读(2068) 评论(0) 推荐(1) 编辑

2008年5月21日

基于Mozilla Thunderbird的扩展开发(七)---工欲善其事,必先利其器

摘要: Mozilla最为人诟病的地方就是没有称手的开发工具,这对于我们这些被微软惯坏的开发人员来说,如果没有Visual Studio这样舒服的工具的话,谁会投入你的怀抱呢?本文就希望从三个方面介绍下我所了解到的Mozilla 平台下的开发工具及一些小技巧。 阅读全文

posted @ 2008-05-21 21:31 Phinecos(洞庭散人) 阅读(3876) 评论(4) 推荐(0) 编辑

构造Soap请求调用Web Services(三)

摘要: 在《用Soap消息调用Web Services(续)》这篇文章中介绍了如何在客户端发送Soap请求去调用服务器端的Web Service并输出服务器返回的结果,但还存在两个弱点,本文的目的就是对其进行改进,使得构造Soap请求发送到服务器端的流程完整。 上文的弱点有二:1)Soap请求是一个XML文件,而非灵活构造出来的。2)服务器端返回的结果仅仅是输出到控制台,而没有进... 阅读全文

posted @ 2008-05-21 12:27 Phinecos(洞庭散人) 阅读(5283) 评论(2) 推荐(0) 编辑

2008年5月20日

基于Mozilla Thunderbird的扩展开发(六)---进程间通信之Socket篇(下)

摘要: 在上一篇《基于MozillaThunderBird的扩展开发(五)---进程间通信之Socket篇(上)》中开发了一个简单的TCP服务器,本文将介绍其对应的客户端。 阅读全文

posted @ 2008-05-20 22:09 Phinecos(洞庭散人) 阅读(2204) 评论(0) 推荐(0) 编辑

2008年5月19日

基于Mozilla Thunderbird的扩展开发(五)---进程间通信之Socket篇(上)

摘要: 这个系列的前两篇文章主要是根据自己的需求,对Thunderbird的源代码进行修改,改进了Thunderbird的现有功能,关注点都在Thunderbird的老本行---邮件客户端的实现上,那是否Thunderbird就仅仅是一个邮件客户端呢?在我看来,并非如此,它源自Mozilla内核,就继承了Mozilla平台的光荣传统,应该视为一个优秀的可扩展的开发平台,更进一步来看,Mozilla的文化深入其骨髓可以看到后来Adobe的Flex,MicroSoft的WPF都吸收了Mozilla平台界面与逻辑相分离的思想,所以接下来几篇文章我想写一个比较有意思的方面----进程间通信。 进程间通信的概念在操作系统中有过详细的介绍,方法很多,我主要关注两种:socket通信,Pipe(管道)通信。 本文的目的就是开发一个扩展,展示TCP/IP socket技术在Mozilla扩展开发中的应用。 阅读全文

posted @ 2008-05-19 21:12 Phinecos(洞庭散人) 阅读(2625) 评论(3) 推荐(0) 编辑

2008年5月18日

基于Mozilla Thunderbird的扩展开发(四)---修改Thunderbird源代码实现自动保存附件

摘要: 在上一篇《基于MozillaThunderbird的扩展开发(三)---如何获取邮件的完整信息》中给出了一种简单的获取邮件的完整信息(包括正文和附件等)的方法,但仔细考虑后发现离实际需求还有一段距离。 Thunderbird中已经有保存附件的功能,但需要手动去操作,既然手头有它的源代码,为什么我们不自己尝试对它进行修改,从而使得它能自动保存所有附件呢?Ok,这篇文章就是基于这样思想的一个尝试。 首先明确一个前提,本文并不想开发一个扩展,而是尝试直接修改Thunderbird的源代码,但你也可以将它修改为一个扩展,这里为了调试开发简单起见,因此我选择了直接修改其代码。 阅读全文

posted @ 2008-05-18 20:06 Phinecos(洞庭散人) 阅读(3810) 评论(7) 推荐(0) 编辑

上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 61 下一页

导航