windown编程
文章平均质量分 82
happylife1527
这个作者很懒,什么都没留下…
展开
-
匿名和命名管道(windows)
一、概述 管道(Pipe)实际是用于进程间通信的一段共享内存,创建管道的进程称为管道服务器,连接到一个管道的进程为管道客户机。一个进程在向管道写入数据后,另一进程就可以从管道的另一端将其读取出来。匿名管道(Anonymous Pipes)是在父进程和子进程间单向传输数据的一种没有名字的管道,只能在本地计算机中使用,而不可用于网络间的通信。二、匿名管道 匿名管道由Create转载 2012-10-08 22:12:27 · 710 阅读 · 0 评论 -
问题:vs2005中编程时,遇到如下: warning C4996: “fopen”被声明为否决的 .
http://blog.csdn.net/chenlunju/article/details/7612772解释:微软的警告,主要是那些都是C库的函数,很多函数内部是不进行参数检测的(包括越界类的),微软担心使用 这些 会造成内存异常,所以就改写了一下同样功能的函数,只不过进行了参数的检测,使用这些新的就可以 了。不用特意记,每个函数在给出警告时都会告诉你相应的安全函数,注意转载 2012-10-11 18:22:09 · 530 阅读 · 0 评论 -
VC技术内幕笔记
第一天:WINDOWS应用程序一定要有WinMain函数,该函数用来完成一些特殊的任务,象创建程序的主窗口,主窗口用来处理消息的代码。MFC将WinMain隐藏在框架中,不象写SDK程序时可以很容易的找到它。WINDOWS采用的消息处理机制也交给了程序框架,我们不必担心如何使这些消息和代码联系起来。并且WINDOWS定义好了一些消息,当窗口被创建时系统就会发送WM_CREATE消息转载 2012-10-16 22:46:18 · 1398 阅读 · 0 评论 -
深入window推荐书籍
从事软件开放必须要对计算机底层工作有个很深入的研究,学习汇编是必须的。个人推荐你的书“王爽的《汇编语言》”,很初级的汇编入门书,看完这个以后再看”罗云彬的《WINDOWS环境下32位汇编语言程序设计》”,看完这两本相信已经对WINDOWS底层工作有个很深入的研究了。如果想继续往深处学习的话,看《WINDOWS内核编程和信息安全》《0DAY安全软件漏洞分析技术》《微软.NET程序的加密与解密》和看雪转载 2012-10-17 14:46:02 · 962 阅读 · 1 评论 -
不同操作系统下的程序入口点分析
http://blog.csdn.net/virtualuniverse/article/details/6707587转自 http://hi.baidu.com/liu_bin0101/blog/item/03e3a9ec4e0fd5d72e2e21b9.html程序入口与编译器没有什么关系, 关键是链接链接器(UNIX的用的ld和WINDOWS下用的LINK.EXE)ld 用转载 2012-10-31 22:42:44 · 560 阅读 · 0 评论 -
从Entry Point到main函数调用(1)
http://blog.csdn.net/virtualuniverse/article/details/6707707转自 http://driftcloudy.iteye.com/blog/1048750之前在调试exe时感觉很奇怪,为什么Entry Point并非直接进入到main函数。举例来说,如果将一段空的C代码build为exe:C代码 voi转载 2012-10-31 22:43:24 · 716 阅读 · 0 评论 -
从Entry Point到main函数调用(2):GetVersion
http://blog.csdn.net/virtualuniverse/article/details/6707710转自 http://driftcloudy.iteye.com/blog/1049404之前(1)篇中大致介绍了mainCRTStartup,但是其中一些调用到的函数并未深究,现打算逐一剖析它们。 GetVersion GetVersion函数是kernel3转载 2012-10-31 22:43:59 · 351 阅读 · 0 评论 -
TCHAR和char 的相互转化
http://blog.csdn.net/huapeng_guo/article/details/8131458没有定义UNICODE,所以它里面的字符串就是简单用" "就行了,创建工程的时候包含了UNICODE定义,就必须对TCHAR和char进行转换。首先是把TCHAR转为char[cpp] view plaincopyprint?//将TCHAR转转载 2012-11-05 12:24:51 · 436 阅读 · 0 评论 -
VC下的数据库操作之--ODBC .
近日学了VC下的数据库操作,今个先总结下ODBC的使用。 ODBC以微软自带Access数据库举例:创建一个名为myds.mdb的文件,两个字段ID与NAME,数据自己随便填一些即可。 方法1: 需要手动添加数据源myds [cpp] view plaincopyprint?#include #includ转载 2012-11-05 12:25:43 · 622 阅读 · 0 评论 -
vc odbj 连接 slqserver
SQLRETURN retCode; //1.get env handle retCode=SQLAllocEnv(&env); if(!(retCode == SQL_SUCCESS)) { printf("create env handle failed \n"); return false; }原创 2012-11-05 12:27:00 · 7438 阅读 · 0 评论 -
自动安装并配置ODBC的思路与实现
http://www.cnblogs.com/pezy/archive/2011/12/16/2290688.html一、如何自动注册ODBC数据源其实都是用到一个函数:SQLConfigDataSource。这里举两个有代表性的例子:?12345678910111213// 自动注册F转载 2012-11-05 12:29:58 · 840 阅读 · 0 评论 -
Windows 内核(WRK)简介
http://www.cnblogs.com/BoyXiao/archive/2011/01/08/1930904.html引子WRK 是微软于 2006 年针对教育和学术界开放的 Windows 内核的部分源码,WRK(Windows Research Kernel)也就是 Windows 研究内核,在 WRK 中不仅仅只提供了 Windows 内核模块的部分代码,其还提供了编译转载 2012-10-09 21:21:58 · 665 阅读 · 0 评论 -
进程间通信 - 动态链接库实现
http://www.cnblogs.com/BoyXiao/archive/2011/01/03/1924660.html引子前面介绍的几种用于实现进程之间通信的方法都是比较正统的方式,像剪贴板,命名管道这些都还是用得比较多的,而这里将介绍的是一种比较偏门的方法来实现进程间的通信,所谓偏门呢,自然就是用的少,能够不用就不要使用。其实这种方法就是通过动态链接库来实现进程间的转载 2012-10-09 21:01:39 · 409 阅读 · 0 评论 -
windows下命名管道、邮件槽使用学习
继续 进程间通讯的学习,命名管道命名管道例子服务端创建管道 CreateNamedPipe等待客户端连接 ConnectNamedPipeRead 或 Write操作断开连接 DisconnectNamedPipe关闭句柄#include #include const DWORD BUFSIZE = 1024;const DWORD PIPE转载 2012-10-08 22:17:02 · 551 阅读 · 0 评论 -
进程通信之二 管道技术第二篇 匿名管道
上一篇《进程通信之二 管道技术第一篇 输入输出的重定向》示范了增加若干程序代码来完成程序输入输出的重定向,并提出了如果没有程序源代码,只有程序文件如何来完成重定向。本篇就介绍如何使用匿名管道来完成这一任务。 计算机中管道pipe类似于现实世界中的水管道,在一端放入水流,另一端就会流出来。在计算机机中水流自然被数据流所代替了。计算机中管道分为匿名管道和命名管道,本篇将主要介绍用匿名管道来完成转载 2012-10-08 22:03:08 · 667 阅读 · 0 评论 -
VC实现进程间通信(MailSlot附实例)
By 闲鸟归来01 // ...Server02 #include windows.h>03 #include 04 05 /* 创建邮路由:06 HANDLE CreateMailslot (07 LPCTSTR lpName, // 邮路名08转载 2012-10-08 22:28:45 · 861 阅读 · 0 评论 -
9、进程通信之命名管道
http://www.cnblogs.com/mydomain/archive/2010/09/18/1830452.html命名管道是通过网络来完成进程间的通信,它屏蔽了底层的网络协议细节。我们在不了解网络协议的情况下,也可以利用命名管道来实现进程间的通信。命名管道充分利用了Windows NT和Windows 2000内建的安全机制。将命名管道作为一种网络编程方案时,它实际上建立了转载 2012-10-09 12:11:32 · 851 阅读 · 0 评论 -
vsprintf()-Windows程序设计
1 #include stdarg.h> 2 #include stdio.h> 3 #includestdlib.h> 4 char buffer[80]; 5 int vspf(char *fmt, ...) 6 { 7 va_list argptr; 8 int cnt; 9 va_start(argptr,转载 2012-10-09 14:06:35 · 477 阅读 · 0 评论 -
进程间通信 - 匿名管道实现
http://www.cnblogs.com/BoyXiao/archive/2011/01/01/1923828.html转载 2012-10-09 15:44:52 · 553 阅读 · 0 评论 -
LPCTSTR,LPTSTR 用法
http://www.cnblogs.com/kantlee/archive/2009/06/08/1498704.htmlchar是C语言标准数据类型,字符型,至于由几个字节组成通常由编译器决定,一般一个字节。Windows为了消除各编译器的差别,重新定义了一些数据类型,你提到了另外几个类型都是这样。CHAR为单字节字符。还有个WCHAR为Unicode字符,即不论中英文,每个字有两个字节组转载 2012-10-09 12:05:40 · 3732 阅读 · 0 评论 -
vc 进程间通讯
在Windows下各个任务是以不同的进程来完成的,当一个进程启动后,操作系统为其分配了4GB的私有地址空间,由于位于同一个进程中的线程共享同一个地址空间,所以线程间的通信很简单,就像两个人如果在同一个房间里说话的话就比较容易,只要动动嘴皮子就OK了, 但是如果在两个国家里就比较麻烦,必须借助于一些其他的手段,比如打电话等. 以下介绍四种进程通信方式,虽然是在windows下的环境但是在其他的操作系转载 2012-10-08 22:30:09 · 451 阅读 · 0 评论 -
使用命名管道实现进程间通信
http://www.cnblogs.com/erwin/archive/2007/04/20/721183.html使用命名管道实现进程间通信来源 : VChelp4.5 进程间通信在Win32下提供的进程间通信方式有以下几种: 剪贴板Clipboard:在16位时代常使用的方式,CWnd类中提供了支持。 COM/DCOM:通过COM系统的代理存根方式进行进程转载 2012-10-09 12:07:36 · 733 阅读 · 0 评论 -
WinAPI: ShellExecute - 打开外部程序或文件
http://www.cnblogs.com/del/archive/2008/02/13/1068229.htmlShellExecute( hWnd: HWND; {指定父窗口句柄} Operation: PChar; {指定动作, 譬如: open、print} FileName: PChar; {指定要打开的文件或程序} Parameters: PChar转载 2012-10-09 14:08:39 · 537 阅读 · 0 评论 -
进程间通信 - 命名管道实现
http://www.cnblogs.com/boyxiao/archive/2011/01/02/1924188.html引子好,到这里呢,就需要介绍实现进程间通信的第四种方式了,也就是通过命名管道来实现,前面介绍的那三种方式呢,都是有缺陷或者说局限性太强,而这里介绍的命名管道相对来说,在这方面就做得好很多了,比如,剪贴板的话只能实现本机上进程之间的通信,而邮槽的话虽然是转载 2012-10-09 20:59:43 · 297 阅读 · 0 评论 -
进程间通信 - 剪贴板实现
http://www.cnblogs.com/BoyXiao/archive/2010/12/25/1916677.html引子由于在启动一个进程后,操作系统会给这个进程分配 4GB 的私有地址空间,至于为何有 4GB 这么大,那得考虑进程的私有地址空间和实际物理内存地址空间之间的映射以及页交换等等细节问题了,这里不予讨论,从名字就可以知道,既然操作系统给每一个进程分配的是私有地址转载 2012-10-09 21:02:41 · 369 阅读 · 0 评论 -
Findwindow函数用法
1.函数说明:FindWindow,Win32 API函数。FindWindow函数返回与指定字符串相匹配的窗口类名或窗口名的最顶层窗口的窗口句柄。这个函数不会查找子窗口。2.函数原型:HWND FindWindow( LPCTSTR lpClassName, LPCTSTR lpWindowName转载 2012-10-10 09:40:51 · 3013 阅读 · 0 评论 -
进程间通信 - 邮槽实现
http://www.cnblogs.com/BoyXiao/archive/2010/12/31/1923462.html进程间通信 - 邮槽实现引子前面的一篇博文介绍了进程之间通信的一种最为简单的方式,也就是在本地进程之间通过剪贴板来实现进程间通信,而剪贴板自有其缺陷,很显然的是,剪贴板只能在本地机器上实现,无法实现本地进程与远程服务器上的进程之间的通信转载 2012-10-09 20:58:36 · 340 阅读 · 0 评论 -
WinDbg学习笔记(一)--认识WinDbg
http://www.cnblogs.com/w413133157/archive/2011/11/28/2266864.htmlWinDbg学习笔记(一)--认识WinDbg标 题: 【原创】WinDbg学习笔记(一)--认识WinDbg作 者: gaorqing时 间: 2009-07-27,20:45:27链 接: http://bbs.pediy.com/s转载 2012-10-27 21:34:37 · 479 阅读 · 0 评论