码迷,mamicode.com
首页 >  
搜索关键字:windows核心编程    ( 129个结果
windows核心编程之使用线程APC回调安全退出多个等待线程
前言 程序开发中经常遇到需要这些情况:辅助线程正在等待内核对象的触发,主线程需要强制终止辅助线程。我们常常做的就是使用:TerminateThread来强制终止线程。这样做当然是不太好的,强制终止线程后系统不会销毁此线程的堆栈,长久下去内存泄露问题就会很严重了。线程最安全的退出方式当然还是让它自己返回了。本文主要介绍windows核心编程中介绍的一种安全退出线程方式:使用可等待API等待内核对象...
分类:编程语言   时间:2015-03-16 12:53:41    阅读次数:239
Windows核心编程笔记(7)----内核模式下的线程同步
1、内核对象同步与用户模式下同步对比 使用内核对象的唯一缺点就是性能,调用内核对象函数时,调用线程必须从用户模式切换到内核模式,这种切换是相当 耗时的。 内核对象(进程、线程、作业)要么处于触发态,要么处于未触发状态。进程内核对象在创建时总是处于未触发状态, 当进程终止时,操作系统会自动使进程内核对象变成触发状态。当进程内核对象处于触发状态后,将永远保持这种状态, 再也不能变回未触发状态...
分类:编程语言   时间:2015-03-01 10:32:56    阅读次数:344
Windows核心编程之创建可等待定时器及其APC回调
创建可等待定时器是Windows内部线程同步的方式之一,本文简单讲述如何使用这一内核对象进行线程同步。 创建对象: //创建事件内核对象,默认未触发状态 HANDLE hTimer = CreateWaitableTimer(NULL, TRUE, NULL); 设置对象属性: CreateWaitableTimer创建完成后内核对象处于未触发状态,需要使用API BOOL WIN...
分类:Windows程序   时间:2015-02-27 18:25:32    阅读次数:420
C++技术问题总结-第0篇 类型转换
从今天開始,对C++经常使用技术做个总结。參考书籍:《C++Primer》、《C++对象模型》、《设计模式》、《Windows核心编程》、《STL解密》。1.static_cast等四个cast的详细意义C++类型转换:隐式转换和显式转换。显式转换:static_cast、dynamic_cast、...
分类:编程语言   时间:2015-02-26 19:53:27    阅读次数:150
windows 全局hook
最近有用到全局hook,其实可参考windows核心编程,全局hook也是Dll注入的一种方式。首先,必须是一个Dll,可导出一个接口,在其中设置全局hook,类型为WH_GETMESSAGE(这样,应该是所有进程都会被hook到了),这样成功后,系统会把这个Dll注入到有getmessage的所有进程中,即会为..
分类:Windows程序   时间:2015-02-12 02:03:07    阅读次数:325
异步设备IO 《windows核心编程》第10章学习<待续>
异步IO操作与同步操作区别: 在CreateFile里的FILE_FLAG_OVERLAPPED标志 异步操作函数LPOVERLAPPED参数 接收IO请求完成通知 触发设备内核对象 缺点:同一个设备内核对象有可能进行多次读写操作,这样第一个完成这个设备内核对象就会被触发,所以这种方式不可以使用于这...
分类:Windows程序   时间:2015-02-07 00:29:01    阅读次数:278
windows暗黑技能3篇
在从windows核心编程中了解到API劫持(也叫Hook API)这种技术后,我就成了一个投机者,总是拦截其它软件的API函数,来做一些不可告人的目的, 这让我生活在痛苦之中。在我尝试拦截各种API函数来获取我需要的功能过程中,我发现很多人遇到了和我同样困难的问题,所以我在这里发布3个使用API 拦截技术实现的功能,这3个都是在应用层Hook。如没有特殊的说明,全部支持xp及win7系统。 ...
分类:Windows程序   时间:2015-02-06 16:46:23    阅读次数:218
[转载]关于chHANDLE_DLGMSG
===========================================原文地址:点击打开链接最近读到windows核心编程 作者制作的chHANDLE_DLGMSG 对话框消息处理宏#definechHANDLE_DLGMSG(hWnd,message,fn)/case(messag...
分类:其他好文   时间:2015-02-02 21:20:47    阅读次数:174
Windows-进程-退出进程
终止进程的运行 1.主线程的进入点函数返回(最好使用这个方法)。 2.进程中的一个线程调用ExitProcess函数(应该避免使用这种方法)。 3.另一个进程中的线程调用TerminateProcess函数(应该避免使用这种方法)。 4.进程中的所有线程自行终止运行(这种情况几乎从未发生)。 主线程的进入点函数返回 始终都应该这样来设计应用程序,即只有当主线程的...
分类:Windows程序   时间:2015-01-31 12:20:54    阅读次数:316
windows - 进程 - CreateProcess函数详解
CreateProcess函数原型如下: [cpp] view plaincopy BOOL CreateProcess(       PCTSTR pszApplicationName,       PTSTR pszCommandLine,       PSECURITY_ATTRIBUTES psaProcess,...
分类:Windows程序   时间:2015-01-30 09:08:40    阅读次数:392
129条   上一页 1 ... 6 7 8 9 10 ... 13 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!