windows编程
chijianxingfeng
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
复制自身程序到windows目录和系统目录,获取系统的相关信息
#include #include #include using namespace std;//复制自身程序到windows目录和系统目录下的程序void CopySelf(){ //保存自身程序的路径 char szSelfName[MAX_PATH] = {0}; //保存windows目录的路径 char szWindowsPath[MAX_PATH] = {0};原创 2013-04-27 13:56:53 · 1185 阅读 · 0 评论 -
windows I/O完成端口
Windows I/O完成端口 一. 基本概念: 设备---windows操作系统上允许通信的任何东西,比如文件、目录、串行口、并行口、邮件槽、命名管道、无名管道、套接字、控制台、逻辑磁盘、物理磁盘等原创 2013-12-26 17:11:05 · 1219 阅读 · 0 评论 -
HOOK API技术
HOOK APIHOOK API 是指截获特定进程或系统对某个API函数的调用,使得API的指定流程转向指定的代码。截获API使得用户有机会干预其他应用程序流程。最常用的一种挂钩API的方法是改变目标进程中调用API函数的代码,使得它们对API的调用变为对用户自定义函数的调用。实现原理:1.在挂钩API之前,必须将一个可以替代API执行的函数的代码注入到目标进程中。一般称这个自定义原创 2013-07-02 20:04:05 · 1752 阅读 · 0 评论 -
windows钩子
钩子的概念:钩子:是windows消息处理机制中的一个监视点,应用程序可以在这里安装一个子程序(钩子函数)以监视指定窗口某种类型的消息。钩子函数:是一个处理消息的程序段,通过调用相关的API函数(SetWindowsHookEx()),把他挂入系统,每当特定的消息发出,当没有到达目的窗口前,钩子程序就先捕获该消息,这时,钩子函数既可以加工处理该消息,也可以不作处理而继续传递该消息。钩子原创 2013-07-01 11:53:27 · 1178 阅读 · 1 评论 -
windows中动态链接库的创建
windows中动态链接库的创建创建动态链接库工程:我使用的vs20101. 创建win32项目,(我们命名为DllDemo)2.在应用程序类型中选择DLL动态链接库的入口点DllMain (在dllmain.cpp文件中):DllMain函数。库的入口函数仅供操作系统使用,Windows在库装载、卸载、进程中线程创建和结束时调用入口函数,以便动态链接库可以采取相应的动作。DllM原创 2013-06-26 19:02:09 · 1250 阅读 · 0 评论 -
框架中的窗口
CWnd类 (CWnd 类是类库的核心)在类的体系结构中,框架程序提供了CWnd类来封装窗口的HWND句柄,即使用CWnd类来管理窗口的对象,这包括窗口的创建和销毁、窗口的一般行为和窗口所接收的消息。CCmdTarget类:为了使其它的类也有处理消息的机会,我们封装一个类CCmdTarget作为消息处理的终点,即所有从这个类派生的类都有处理消息的能力。所有有消息处理能力的类都要原创 2013-05-17 18:01:16 · 620 阅读 · 0 评论 -
框架程序基础
框架程序的状态信息对于应用程序来说,有许多的状态需要维护:如模块状态、线程状态等。模块的概念:每一个被加载到内存中的文件成为一个模块。一般进程是由多个模块组成的,通常应用程序都是通过模块句柄来访问进程中的模块。事实上,模块的句柄的值就是该模块映射到进程中的地址。模块 - 线程状态:AFX_MODULE_THREAD_STATE模块状态: AFX_MODULE_STATE线程原创 2013-05-17 14:52:33 · 735 阅读 · 0 评论 -
动态类型识别和动态创建
运行时类信息 (CRuntimeClass 类)动态类型识别(Runtime Type Infomation, RTTI):在程序运行的过程中辨别对象是否属于特定类的技术。动态创建:如果为每个类都写一个创建该类的全局函数的话,就能够依靠从文件或用户的输入中取得此函数的内存地址,从而创建用户动态指定的类。一个类支持运行期识别能力需要两个条件:1.含有一个CRuntimeClass原创 2013-05-17 13:47:09 · 893 阅读 · 0 评论 -
windows图像界面
了解窗口每个GUI应用程序至少创建一个窗口,称为主窗口,它作为用户与应用程序间的主要界面来提供服务。应用程序的主窗口包括标题栏、菜单来、windows系统菜单、最小和最大化按钮、关闭按钮、可改变大小的边框、垂直和水平滚动条。应用程序必须提供一个称为窗口函数的回调函数来处理窗口的输入,向客户区显示输出。win32工程程序的入口函数:int APIENTER WinMain(HIN原创 2013-05-17 11:20:54 · 756 阅读 · 0 评论 -
win32程序的执行单元
win32程序的执行单元代码的执行单元 ---- 线程CreateProcess函数创建了进程,同时也创建了进程的主线程。系统中的每个进程都至少有一个线程。多线程创建新的线程函数:CreateThread()等待线程运行结束:WaitForSingleObject(), 该函数用于等待指定对象变成受信状态。一个可执行对象有两种状态:未受信和受信状态。线程对象只有当线程运行结原创 2013-05-16 22:38:04 · 667 阅读 · 0 评论 -
win32程序运行原理
win32程序运行原理cpu的保护模式和windows系统80386处理器有3种工作模式:实模式、保护模式、虚拟86模式。实模式和虚拟86模式是为了8086处理器兼容而设置的。保护模式是80386处理器的主要工作模式,保护主要是对存储器的保护,windows操作系统就运行在此模式下。CPU在保护模式下支持虚拟存储,即虚拟内存。进程的地址空间:分为用户空间和系统空间。用户空间原创 2013-05-16 21:35:01 · 889 阅读 · 0 评论 -
windows内存映射文件
原文地址:http://www.cnblogs.com/fangyukuan/archive/2010/09/09/1822216.html内存映射文件Windows提供了3种进行内存管理的方法: • 虚拟内存,最适合用来管理大型对象或结构数组。 • 内存映射文件,最适合用来管理大型数据流(通常来自文件)以及在单个计算机上运行的多个进程之间共享数据。 • 内存堆栈,最适合用转载 2013-04-27 22:37:47 · 758 阅读 · 0 评论 -
winsock中怎么获取本机的IP地址
winsock中怎么获取本机的IP地址第一步:获得本机的主机名称,有很多种方法可以获得,具体看下面的链接http://blog.youkuaiyun.com/wangkaishou/article/details/5356189第二步:通过主机名称获得主机的信息,这些信息包含在结构体 hostent中,hostent结构信息如下:struct hostent { char原创 2013-04-27 20:07:30 · 2655 阅读 · 0 评论 -
TCP/IP网络通信 WinSock编程
网络字节顺序:网络中传输的数据使用的均是大尾方式, 大尾方式是 高位存放低字节,地位存放高字节。windows提供了一些函数来处理本地机器的字节顺序和网络字节顺序的转换: u_short htons(u_short hostshort); u_long htonl(u_long hostlong); u_short ntohs(u_short netshort); u_原创 2013-04-27 14:35:47 · 1060 阅读 · 0 评论 -
详解Windows消息分类以及WM_COMMAND与WM_NOTIFY的区别,以及模拟发送控件通知消息
转自:http://blog.sina.com.cn/s/blog_4b3c1f950100nten.htmlWindows消息的分类1. 标准消息(队列消息) 除WM_COMMAND之外,所有以WM_开头的消息都是标准消息,如WM_MOUSEMOVE、WM_LBUTTONUP、WM_KEYDOWN、WM_CHAR。 从CWnd派生的类都可以接收到这类消息。转载 2013-12-26 14:32:38 · 6397 阅读 · 0 评论
分享