2007年3月4日
摘要: 不知你是否用过这样的程序,他们本身并没有解压缩的功能,而是调用DOS程序PKZIP完成ZIP包的解压缩。但是在程序运行时又没有DOS控制台的窗口出现而且一切本应该在DOS下显示的信息都出现在了那个安装程序的一个文本框里。这种设计既美观又可以防止少数眼疾手快的用户提前关了你的DOS窗口。现在就来讨论一下,如何用匿名管道技术实现这个功能。管道技术由来已久,相信不少人对DOS命令里的管道技术最为熟悉。当... 阅读全文
posted @ 2007-03-04 14:10 张尹 阅读(977) 评论(0) 推荐(0) 编辑
摘要: 打开Source Insight来阅读EduOS的源代码,我们在stdio.c里找到了printf的实现代码.首先看看对printf的定义:int printf (const char *cntrl_string, ...)第一个参数cntrl_string是控制字符串,也就是平常我们写入%d,%f的地方.紧接着后面是一个变长参数.看看函数头部的定义: int pos = 0, cnt_print... 阅读全文
posted @ 2007-03-04 13:55 张尹 阅读(993) 评论(0) 推荐(0) 编辑
摘要: 在Windows环境下的所谓shell程序就是dos命令行程序,比如VC的CL.exe命令行编译器,JDK的javac编译器,启动java程序用的java.exe都是标准的shell程序。截获一个shell程序的输出是很有用的,比如说您可以自己编写一个IDE(集成开发环境),当用户发出编译指令时候,你可以在后台启动shell 调用编译器并截获它们的输出,对这些输出信息进行分析后在更为友好的用户界... 阅读全文
posted @ 2007-03-04 13:53 张尹 阅读(1407) 评论(0) 推荐(0) 编辑
摘要: 1.在VC中新建一控制台程序,选支持MFC(当然,你也可以不选择支持MFC的,不过会很麻烦) 2.按CTRL+W调出MFC ClassWizard,Add Class->From a type library,选择你的word的类型库(例如我的是word2003,安装在e盘,我的路径是"e:\edittools\microsoft office\office11\msword.olb"),选... 阅读全文
posted @ 2007-03-04 13:36 张尹 阅读(4319) 评论(3) 推荐(0) 编辑