hid.dll是USB的HID相关动态链接库文件,缺少它可能会造成usb设备无法正常使用。当你的电脑弹出提示“计算机缺少hid.dll”或“无法找到hid.dll

Hkapi.dll

HKCommand.dll

你这样HOOK API会导致系统崩溃的,你修改了API的地址,根本就没有把地址改回去。
那么就会造成一种现象,从你的程序修改了API地址之后,往后系统上所有的进程只要一
调用这个API就会跳到你这里来。
我的建议:
1.在自己的函数里的第一句话就应该把地址改回
2.应该加
__try
{
}
__finally
{
}
在__finally里执行你的函数指针
这样可以避免出现异常使HOOK 的API无法得到执行

hid.dll的更多相关文章

  1. C#与USB HID间的通信

    原文:C#与USB HID间的通信 C#与USBHID接口的通讯相对于与串口间的通讯较为复杂,其中需要多次调用到Windows的一些API.其原理编者尚未全部理清,以下提供简单的USBHID通讯流程. ...

  2. C# 访问USB(HID)设备

    原文:C# 访问USB(HID)设备 二话不说,直接给代码,如果您真想做这方面的东西,还是稍微研究下,没有现成的好类用,就需要自己了解其原理 //引用空间 using System; using Sy ...

  3. 使用C#使用Windows的HID通信

    本文转载于:https://blog.csdn.net/u010875635/article/details/73321066 Windows使用HID通信相对比较简单,HID都是通过PID.VID信 ...

  4. C#进阶——记一次USB HID的各种坑(x86,x64,win10,win7)

    一.简叙 写工控上位机的搬砖人,难免会遇到USB通讯,在一个项目中,我写的上位机使用USB HID协议和STM32通讯传输数据,从零大概花了几天找例程,找资料,最后是各种搬砖修补,终于出来了一个出版D ...

  5. Tomcat崩溃

    参考: http://bbs.csdn.net/topics/390391810?page=1 自己遇到的: --------------------------------------------- ...

  6. windows XP系统内核文件分析(全)

    Windows XP个别 System32 文件 System32 文件夹下个别要移除的文件 我们就要删除另外600 个 system32 文件...我们要一次把它们全都解决掉. 以下是我所删除的 S ...

  7. 模拟美萍加密狗--Rockey2虚拟狗(二)

    按好了WDK,看了一天的DSF例子GenericHID,直接头大了,就能改个VID,PID让美萍识别成R2的狗.其他的什么各种描述符,根本无从下手,怪不得网上没有驱动模拟的加密狗,确实太复杂了,特别像 ...

  8. 模拟美萍加密狗--Rockey2虚拟狗(三)

    几经挣扎,我最终还是选择了虚拟设备的方法来模拟Rockey2加密狗.HID.DLL劫持+API劫持的办法技术上虽然简单些,但太繁琐了,不仅要转发大量的函数,还要Hook好几个API,向我这么懒的人可干 ...

  9. C# 连蒙带骗不知所以然的搞定USB下位机读写

    公司用了一台发卡机,usb接口,半双工,给了个dll,不支持线程操作,使得UI线程老卡. 懊恼了,想自己直接通过usb读写,各种百度,然后是无数的坑,最终搞定. 现将各种坑和我自己的某些猜想记录一下, ...

随机推荐

  1. Error:(72) error: unknown element <user-permission> found.

    android studio升级之后会出现这样一个问题,Error:(72) error: unknown element <user-permission> found. 解决方法是在项 ...

  2. qt qextserialport __imp_SetupDiGetDeviceRegistryPropertyW

    使用 qextserialport 编写串口助手的时候,提示找不到 __imp_SetupDiGetDeviceRegistryPropertyW,经过摸索有以下两种解决方法: 第一种: 把相应的源文 ...

  3. Tomcat 控制台出现乱码

    本地在启动tomcat时,控制台启动显示乱码 这是因为windows默认编码集为GBK,用startup.bat启动tomcat时,它会读取catalina.bat的代码并打开一个新窗口运行,打开的c ...

  4. 彻底搞懂Scrapy的中间件(三)

    在前面两篇文章介绍了下载器中间件的使用,这篇文章将会介绍爬虫中间件(Spider Middleware)的使用. 爬虫中间件 爬虫中间件的用法与下载器中间件非常相似,只是它们的作用对象不同.下载器中间 ...

  5. pyqt5 -——菜单和工具栏

    一. 状态栏 # -*- coding: utf-8 -*-# @Time : 2018/12/22 12:37# @Author : Bo# @Email : mat_wu@163.com# @Fi ...

  6. C#调用C++的DLL 尝试写入受保护的内存

    原因:C#中的声明函数的参数类型与C++的函数的参数类型不一致,在参照C#与C++的参数类型对照表以后,修改相应参数类型,问题解决

  7. LevelDB源码分析-Write

    Write LevelDB提供了write和put两个接口进行插入操作,但是put实际上是调用write实现的,所以我在这里只分析write函数: Status DBImpl::Write(const ...

  8. mybatis查询如何返回List<Map>类型数据

    只要设定resultType而不设定resultMap就可以了:   <selectid="selectByPage"parameterType="java.uti ...

  9. 《DOM Scripting》学习笔记-——第五章、第六章 案列改进

    第四章的案例代码可以得到更好的改进.例如:预留退路.向后兼容性和分离js. 原html代码: <!DOCTYPE html> <html lang="en"> ...

  10. 宝塔面板安装在根目录www下

    不能重装,重装防火墙要重新关闭. 安装时要主要更改文件权限.