- 博客(45)
- 资源 (18)
- 收藏
- 关注
原创 C#文件下载四种方法
从CSDN论坛上看到这个帖子: http://topic.csdn.net/u/20120822/10/d8115bb7-2f2a-4c2f-b0c1-aab68bcb1e3e.html出于对C#功能的好奇,想那个工程试看看。 一、过程1、建C# Form工程以前接触的都是C# Form工程,以为这次也一样,没想到到报以下错误:名空间“System.Web”中不存在
2012-08-31 16:30:39 11383 1
转载 简述驱动开发应注意的事项
转载自: http://www.heibai.net/articles/defense/fangyujiqiao/2010/1223/12056.html 1、一定不要在没有标注 I/O 请求数据包 (IRP) 挂起 (IoMarkIrpPending) 的情况下通过调度例程返回 STATUS_PENDING。 2、一定不要通过中断服务例程 (ISR) 调用 KeSy
2012-08-31 15:15:38 2377
转载 WDM驱动之IRP处理:取消IRP
转载自: http://bbs.ednchina.com/BLOG_ARTICLE_1982793.HTM 一、前言IRP请求的最终结局无非有两个:要么被完成了,要么被取消了。完成IRP请求的过程已经在前面讲过了,这里仔细讲一个IRP请求的取消。 二、取消IRP的原因为什么要取消IRP请求呢?一般来讲,原因不外乎是本请求操作超时或设备故障导致的。具体理解,可以考虑如下两种情形:
2012-08-31 15:05:32 2035
原创 Window XP驱动开发(二十四)虚拟串口设备驱动
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖 在我的一篇文章winCE中实现虚拟串口的方法>>中,讲到在wince 下开发虚拟串口驱动的方法,现在介绍在windows XP下开发虚拟串口的方法。 可以开发一个虚拟串口,将读写请求传递给USB驱动,这样就可以利用现成的串口调试工具向USB设备读取了。1、DDK串
2012-08-31 15:01:03 15578 2
转载 IRP的同步问题
转载自: http://zhan.renren.com/debugman?tagId=178558&page=2&checked=true 一、前言对设备的任何操作都会最终转化为IRP请求,而IRP一般都是由操作系统异步发送的。异步处理IRP有助于提高效率,但是有时异步处理会带来逻辑上的错误,这时需要将异步的IRP同步化。将IRP同步化的方法有StartIO例程,使用中断服务例
2012-08-31 12:15:48 2356
转载 驱动程序的取消IRP
转载自: http://blog.csdn.net/zacklin/article/details/7612888一、理论当应用层发出的IRP请求很久得不到处理的时候,有时需要把IRP请求取消,每一个IRP都可以对应一个取消例程,通过IoSetCancelRoutine(pIrp,CancelReadIRP);函数把IRP与取消例程进行关联,当要删除取消例程时,把第二个参数设为空即Io
2012-08-31 10:18:45 1886
原创 C#是不是不能把基类对象强转成它派生类对象
转载请标明是引用于 http://blog.csdn.net/chenyujing1234有补充的,请大家指出! 最近在论坛上看到有网友问到C#中对象强转的问题,自己虽然接触过C#,但对这个特性还是第一次接触,所以这里找到一些资料与大家一起分享。一、代码class Program{ static void Main(string[] args) {
2012-08-30 16:49:56 8925
转载 如果系统能够保证不在0x000000007fffffff以上的地址分配内存,那么应用程序就能够正常运行。把一个高33位都为0的64位地址截断为32位地址,无论如何都不会产生问题。系统可以提供这一保证,
转载自: http://blog.csdn.net/vteiawypm/article/details/5547764 如果系统能够保证不在0x000000007fffffff以上的地址分配内存,那么应用程序就能够正常运行。把一个高33位都为0的64位地址截断为32位地址,无论如何都不会产生问题。系统可以提供这一保证,其做法是让应用程序在地址空间沙箱中运行,这样进程可用的地址空间就被限
2012-08-25 14:57:04 5896
转载 <<软件研发之道>>经验法则4---不要认为别人是笨蛋
转载自: http://book.51cto.com/art/201107/277211.htm 参考书籍>我在这里重申:软件是一种知识产权。你必须运用智慧才能开发出软件。你在工作中调用的智慧越多,你最终得到的知识产权的价值就越高。很明显,人们必须不断思考。曾经有人问我:“你认为在软件开发中最困难的事件是什么?”我毫不犹豫地回答:“让人们思考。”信不信由你,大多数人都不愿意
2012-08-24 12:06:18 1062
原创 DLL延迟加载工程分析
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 源码下载地址: http://www.rayfile.com/zh-cn/files/bc9d6854-eb7e-11e1-a73e-0015c55db73d/ 一、载入dll的另一方法:1、 导出dll端(1) 在自己的.cpp文
2012-08-21 18:48:41 5380
转载 反向进程注入及隐藏--动手做一个最简单的PELoader
创建时间:2007-07-27 更新时间:2007-07-28文章属性:原创文章提交:Luke0314 (msfocus_at_hotmail.com)动手做一个最简单的PELoaderLuke msfocus@hotmail.com一.废话最近因为公司的项目需要,顺带的学习了一点和PELoader相关的东西,恰见网上正在沸沸扬扬的谈论虚拟脱壳。本人不才,实在是没能力也
2012-08-20 15:10:17 1816
转载 跨进程访问共享内存的权限问题
转载自: http://blog.csdn.net/jiangsheng/article/details/25563 问:我在服务器上用 CreateFileMapping 创建了一段共享内存。让这个exe始终在服务器上跑。同时,别的用户在客户端用IE访问服务器,将要查询的数据通过C#制作的网页提交上来,服务器得到网页参数后,建立一个COM对象访问上一个exe的共享内存,然后将在共享内
2012-08-20 14:19:37 2517
原创 在无dynamic_cast、reinterpret_cast 、static_cast 情况下类的转化现象
转载请标明是引用于 http://blog.csdn.net/chenyujing1234有补充的,请大家指出! 在我的文章dynamic_cast报错 异常>>中讲到dynamic_cast、reinterpret_cast 、static_cast 在有继承关系类的转化中的作用,现在分析一下在无它们情况下类的转化现象。 一、测试代码#include #inclu
2012-08-15 15:35:41 926
转载 Windows驱动开发:用C还是C++
转载自:http://blog.csdn.net/caperingrabbit/article/details/5103571 在做windows驱动程序开发之前,首先要确定开发的语言。在常见的编程语言中,我们可以选择C、C++、汇编语言甚至Delphi。不过由于微软提供的DDK开发环境所提供的文件和链接用的库只支持C和C++语言。所以一般都采用C或者C++。使用C语言,是
2012-08-15 09:28:16 7222 1
转载 static作用(修饰函数、局部变量、全局变量)
转载自: http://www.cnblogs.com/stoneJin/archive/2011/09/21/2183313.html 在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们
2012-08-14 17:34:51 1608
原创 DDK开发WDM由于头文件路径引起的编译报错:D:\WINDDK\3790.1830\inc\ddk\wdm\wxp\wdm.h(1844) : error C4430: 缺少类型说明符 - 假定为
一、现象描述今天在编译Windows驱动开发技术详解\chapter01\WDM_Driver\2中的WDM程序时,报以下错误:1>D:\WINDDK\3790.1830\inc\ddk\wdm\wxp\wdm.h(1844) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int1>D:\WINDDK\3790.1830\inc\ddk\
2012-08-14 11:43:31 4150
转载 DLL的远程注入技术
转载自: http://blog.csdn.net/bai_bzl/article/details/1801023 一、DLL注入DLL的远程注入技术是目前Win32病毒广泛使用的一种技术。使用这种技术的病毒体通常位于一个DLL中,在系统启动的时候,一个EXE程序会将这个DLL加载至某些系统进程(如Explorer.exe)中运行。这样一来,普通的进程管理器就很难发现这种病毒了,而
2012-08-14 11:15:25 19244 4
转载 DLL注入技术
转载自: http://hi.baidu.com/xwind85/blog/item/ae5332ad04bb7f034a36d662.html一、DLL注入技术的用途DLL注入技术的用途是很广泛的,这主要体现在:1、假如你要操纵的对象涉及的数据不在进程内;2、你想对目标进程中的函数进行拦截(甚至API函数,嘿嘿,由此编写个拦截timeGettime的过程,变速齿轮不就出来了么
2012-08-13 16:52:33 18120 1
原创 uC/OS-II系统中的内存管理方法
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 代码下载: os_mem.c 、ucos_ii.h (http://www.rayfile.com/zh-cn/files/d1e9ff6e-e517-11e1-9a2b-0015c55db73d/)一、引言uC/OS-II的内存管理由自定义的分区(数组)来完成,根据需要
2012-08-13 15:19:45 3971
原创 winCE中实现虚拟串口的方法
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 环境:wince6.0+ARM+Freescell 一、目的设计一个读GPS串口数据的驱动,并注册为COM口。二、实现过程1、COM_Init注册表中读出GPS COM口号及是否Debug,创建共享数据区,创建读取数据的线程,打开GPS真实的COM口;
2012-08-13 11:40:39 5297 2
转载 Win7 下分析蓝屏原因的方法
转载自: http://diybbs.zol.com.cn/58/231_571036.html现在笔者介绍一款强大的蓝屏诊断软件,微软windbg,附上傻瓜式教程,不要担心看不懂。由于鉴于很多人电脑很少蓝屏,所以我们先介绍一个制造蓝屏的方法,从制造到解决,完整的掌握解决蓝屏的方法。如果你的电脑正受到蓝屏困扰,可以直接看【2.如何解决蓝屏】 1、如何制造蓝屏 因为笔者现在电脑
2012-08-10 16:46:29 7901
原创 Window XP驱动开发(二十三)Window驱动的派遣函数
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖 参考书籍> 用户模式下所有对驱动程序的I/O请求,全部由操作系统转化一个叫做IRP的数据结构,不同的IRP数据会被“派遣”到不同的派遣函数(Dispatch Function)中,这也是派遣函数名字的由来。1、 IRP与派遣函数IRP的处理机制类似Windows
2012-08-10 15:24:57 3210 1
转载 “应用程序配置不正确,应用程序未能启动” 错误的解决
转载自: http://hi.baidu.com/xunxun129/blog/item/6b311ccf24f4900992457e87.html 一、问题描述今天在虚拟机上装了XP系统,但运行一个win32 Console程序时弹出对话框:“由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题”在英文os上:This application
2012-08-10 14:48:27 5881
原创 USB转串口驱动代码分析
1、USB插入时,创建设备 DriverObject->DriverExtension->AddDevice = USB2COM_PnPAddDevice;步一、调用USB2COM_CreateDeviceObject创建功能设备对象(FDO)(1) IoCreateDevice系统API的原理为:NTKERNELAPINTSTATUSIoCreateDevice(
2012-08-09 15:55:44 11683 3
转载 Window XP驱动开发(二十四) 电源管理
转载自: http://blog.csdn.net/xxxluozhen/article/details/5023703 一、电源管理1、WDM电源管理模型在Windows 2000和Windows 98中,操作系统接管了大部分电源管理工作。当然,这是因为只有操作系统才能真正了解电源管理的内部过程。例如,系统BIOS负责的电源管理不能区分应用程序使用的屏幕和屏幕保护程序使用
2012-08-09 15:55:32 5083
原创 IoRegisterDeviceInterface IoSetDeviceInterfaceState routine
一、IoRegisterDeviceInterface如果它之前没有被注册,那么IoRegisterDeviceInterface注册一个设备接口类,且创建一个此接口类的实例,这样驱动能被应用程序或其它系统组件按顺序使用能。NTSTATUS IoRegisterDeviceInterface( __in PDEVICE_OBJECT PhysicalDeviceObject
2012-08-08 15:39:27 3835
原创 打开资源文件时显示说没有安装这个ActiveX控件 "{648A5600-2C6E-101B-82B6-000000000014
mscomm32.ocx免费下载地址: http://www.rayfile.com/zh-cn/files/aa702b11-e11a-11e1-9c94-0015c55db73d/一、现象描述:打开资源文件时显示说:未在此计算机上注册ActiveX控件"{648A5600-2C6E-101B-82B6-000000000014}"。请注册该控件并重试 该怎么办呢? 二、原因
2012-08-08 13:28:19 18855 7
转载 InterlockedExchange
LONG InterlockedExchange( IN OUT PLONG Target, IN LONG Value ); InterlockedExchange(a,b)能以原子操作的方式交换俩个参数a, b,并返回a以前的值;因为InterlockedExchange 是原子函数,不会要求中止中断,所以交换指针的方式是安全的
2012-08-07 17:08:09 25738 6
转载 关于将本层的IO_STACK_LOCATION拷贝到下一层的两种方法
方法一:调用MS提供的标准方法IoCopyCurrentIrpStackLocationToNext(推荐使用此方法)方法二:PIO_STACK_LOCATION IrpSp; PIO_STACK_LOCATION NextIrpSp; IrpSp = IoGetCurrentIrpStackLocation(Irp); NextIrpSp = Io
2012-08-07 15:34:47 1153
转载 在ActiveX控件中如何动态调用DLL函数
刚到公司不久,接到领导的下达的一个任务,就是把对POS机操作功能封装在ActiveX控件中,在IE中调用。这样就能实现在IE上直接对POS机进行操作。而我要封装的这个动态库,厂家只提供了一个单的动态库和一百多字的说明,也就是说明一下动态库中有机个函数和其对应的参数。也就是厂家就连动态库对应的头文件也没有提供。:-( 这样也行?!接到这个任务后,我第一想到的是用VC的ATL来实现它。你问我为什么
2012-08-07 15:31:17 2519
原创 COM调用DLL时报错:Run-Time Check Failure #0
转载自: http://hi.baidu.com/merrymine/blog/item/313acbdb63724ce438012f0d.html 一、报错情况最近在用COM调用DLL里报以下错误:Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call
2012-08-07 09:35:46 3925
转载 关于宏定义汇编函数的的做法
转载自:http://blog.csdn.net/xkjcf/article/details/7746157 #include #define Test() { \ __asm PUSH EAX\ __asm and EAX ,0xFFFFDFFF \ __asm POP EAX \ }int main(){ Test()
2012-08-06 13:54:53 1335
原创 VC调用COM的方法总结
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 源码下载地址(采用VS2005+Win32):http://www.rayfile.com/zh-cn/files/fc8fa0f8-df8f-11e1-8c83-0015c55db73d/ 在文章采用ATL模型代替lib dll 的调用>>中我介绍了VC中调用COM的两种方法:(
2012-08-06 11:37:51 6570
转载 ATL产生的RGS文件介绍
引用:http://hi.baidu.com/71167609/blog/item/42c32819786f607fdbb4bd75.html 1、使用ATL向导的话,会在resource中产生一个rgs的注册脚本文件放在"REGISTRY"目录中用来注册组件,会在程序中通过函数DECLARE_REGISTRY_RESOURCEID(IDR_OPCSERVER)使用,IDR_OPCSERV
2012-08-06 10:59:39 7044
原创 Window XP驱动开发(二十二) 驱动程序的同步处理
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 参考书籍:>1、中断请求级在Windows的时候,设计者将中断请求分别划分为软件中断和硬件中断,并将这些中断都映射成不同级别的中断请求级(IRQL)。同步处理机制很大程序上依赖于中断请求级,本节对中断请求级做介绍。1、1 中断请求(IRQ)与可编程中断控制器(P
2012-08-04 10:22:14 7701
转载 DDK下的Sleep函数KeDelayExecutionThread
转载自: http://www.programlife.net/ddk-kedelayexecutionthread-like-win32-sleep-api.html 许多读者一定使用过Sleep函数。这能使程序停下一段时间。许多需要连续、长期执行,但是又不希望占太多CPU使用率的任务,可以在中间加入睡眠。这样能使CPU使用率大大降低。即使睡眠的时间非常短(几十个毫秒)。在驱动中
2012-08-03 14:52:39 4114
转载 C/C++中关于位域的一些总结
转载自: http://blog.csdn.net/xkjcf/article/details/7688528由于信息存储时,可能只占一位或者几位二进制位,比如开关量,只需要占据一位即可。为了节省存储空间,并且处理简单,C语言提供了一种数据结构,称为“位域”。 所谓“位域”是把一个字节的二进制位划分为不同区域,并指明每个域的名称和长度,允许程序按照域名来进行数据的操作。这样就使
2012-08-03 13:44:54 2059
原创 NDIS网络数据监控程序NDISMonitor(3)-----NdisMonitro应用程序(C#)
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 1、主窗口Load函数ctrlForm_Load(1)先调用GetExtensions来获得运行目录下bin目录中的所有文件,通过载入为Assembly,然后获取属性及名字, 并把它们转化为自定义的ExtensionInfo类型的数组存放。(2)创建ComboxBo
2012-08-03 11:40:46 2344
原创 NDIS网络数据监控程序NDISMonitor(2)-----驱动与应用的中间层NdisHook
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 本工程是驱动vpcknt的一个封闭层而已,比较简单。一、导出的API接口分析1、Start(1)加载驱动vpcknt.sys。vpcknt.sys是从工程的资源文件中通过CreateDriverFileFromAppResources加载的。(所以启动NDIS时金
2012-08-03 11:40:10 2524
原创 NDIS网络数据监控程序NDISMonitor(1)-----驱动程序(编译过程与源码讲解)
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 欢迎大家拍砖! 一、编译过程弄了半天终于编译通过了,看来驱动的开发确实没有应用来得简单啊。由于DDK提供的ndis.h有4个,什么时候要调用哪个我确实不清楚:(1)我先用#include 结果报错了:1>1>errors in directory e:\g2\fft\us
2012-08-03 11:39:59 7818 7
Multimonitor_forCSDN
2013-04-03
ColorCursor_Demo_forCSDN.rar
2013-03-27
Atheros AR9XX无线局域网客户端
2012-11-03
PKCS11.7 gzip.exe asm.zip MsVSVC++1.52.7z
2012-07-24
WDK源码中 usbView 例子的编译及说明 .
2012-06-05
(补充)WCE Sqlite30数据库源码
2012-03-17
SM_V0.0.zip
2012-03-01
WCE下测试3D性能的OpenGL ES源码 C/C++语言
2011-10-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人