草庐IT

驱动器

全部标签

windows - 键盘筛选器驱动程序卸载BSOD

我已经开发了一个键盘过滤驱动程序,可以将键盘按钮“1”(位于q按钮上方)更改为“2”。这个司机工作得很好。但是,在执行卸载后,按键盘按钮会导致bsod。如果在不按键盘按钮的情况下加载和卸载驱动程序,将正常卸载。当我用windbg检查它时,即使在卸载了驱动程序的readCompletion()函数之后,它也会被调用。我不知道为什么会发生这种情况,即使我已经调用了iodetachdevice()和iodeletedevice()。此外,加载驱动程序后,如果按开头的键盘按钮“1”,则不会更改为“2”。然后变化很好。我不知道这和什么有关。我希望你能找到解决这个问题的办法。请回答我的问题。下面是

c - 将 SQL_BINARY 数组数据作为参数传递时如何避免零终止? (ODBC 驱动程序)

我刚刚了解到WindowsODBC驱动程序API需要一组SQL_BINARY数据作为输入参数,以零字节结束。尽管我没有在文档中找到这样的语句,但我通过使用以下代码执行存储过程发现了这一点:最小示例//ParameterbindingBYTEdata[10]={15,3,54,144,34,211,200,147,15,74};SQLBindParameter(hstmt,1,SQL_PARAM_INPUT,SQL_C_BINARY,SQL_BINARY,10,0,data,0,NULL);//ProcedureexecutionSQLRETURNres=SQLExecDirect(hs

windows - 用于从网络驱动器中删除文件的批处理文件命令

我正在尝试定期从共享驱动器中删除应用程序日志,ForFiles/p"\\netapp-1\Transfers\Logs\QA"/s/d-15/c"cmd/cdel@file"当路径是我的本地驱动器时,上述命令有效,但它不适用于共享驱动器,我们将不胜感激任何帮助。干杯! 最佳答案 ForFiles.exe不支持UNC路径作为开始搜索的起始目录,因此您必须临时映射一个:到网络路径。最方便的方法是使用pushd/popd命令对自动执行MAP/UNMAP,无需关心当前哪些驱动器号可用于映射。pushd"\\netapp-1\Transfer

c++ - 测量由我的程序引起的设备驱动程序 CPU/IO 利用率

有时代码可以利用设备驱动程序直到系统无响应。最近我优化了一段WIN32/VC++代码,导致系统几乎无响应。但是,CPU使用率非常低。原因是1000次GDI对象(钢笔、画笔等)的创建和销毁。一旦我重构代码以仅创建一次所有对象-系统再次变得响应。这让我想到了一个问题:对于给定的程序/功能/代码行,是否有一种方法可以测量设备驱动程序(GPU/磁盘/等)的CPU/IO使用情况? 最佳答案 您可以使用SysInternalsUtilities中的各种工具(现在是Microsoft产品,请参阅http://technet.microsoft.c

c++ - 如何确定特定驱动器的类型?

对于获取CPU的硬件信息,我觉得有些菜鸟,所以我提出了这个要求:硬盘驱动器、CD/DVD/蓝光阅读器、软盘,如果可能的话还有USB。我一直在MSDNGetDriveType上寻找但似乎我不擅长搜索或者我不明白。有什么想法吗? 最佳答案 我不确定您对链接到的文档有什么不了解...该函数接受的唯一参数是您要获取其信息的驱动器的根目录(包括结尾的反斜杠)。该函数返回一个值,指示驱动器的类型。显示的图表给出了可能的返回值以及每个值的含义。例如:GetDriveType(_T("C:\\"))//returnsDRIVE_FIXEDifC:\

windows - 插入USB设备时自动加载驱动程序

我在WindowsXP下使用受限用户帐户,在获取Adaptoid(最令人垂涎​​的N64Controller->USB适配器,因为它支持发送原始N64Controller命令+事实上它已经停产)才能顺利运行:安装时,随附的软件需要管理员权限才能加载驱动程序。据推测,通过向驱动程序的INF文件添加一些内容(wishna1.inf),可以安排在插入Adaptoid时自动加载驱动程序:问题是,什么东西?(如果驱动程序可以在任何尝试打开\Device\Wish_NA1时自动加载,或者甚至在每次启动时自动加载它,那也很适合我,真的,但是在插入时执行它似乎是正确的方式。)注意:我确实可以访问管理帐

windows - stdio 的 printf 和 Windows 驱动程序

我想在驱动程序代码(DDK)中使用“printf”,因此我包含了stdio.h。但是编译器说:errorLNK2001:unresolvedexternalsymbol__imp__printf有什么想法吗?我在某处看到这是不可能的——但这太糟糕了——我不敢相信。为什么我不能在内核代码中使用标准C例程?像printf这样的C函数来自一个静态的cstd.lib或什么AFAIK不是吗?为什么WDK会为我提供stdio.h? 最佳答案 Windows内核仅支持部分标准C运行时。特别是,不支持高级功能(如文件流、控制台I/O和网络)。相反,

windows - 如何使用默认程序从网络驱动器/路径打开文件?

在我的应用程序中,我想使用网络驱动器中的默认Windows程序打开文件(jpg、pdf、..)。我知道start,但它似乎不适用于网络路径。我尝试了以下命令,但我得到的只是Windows对话框,告诉我他不知道如何打开该文件以及我是想使用网络服务来请求程序还是手动选择。从cmd.exe(P:\是网络驱动器):cmd/c"start\server\path\to\image.jpg">cmd/c"startP:\path\to\image.jpg"文件的路径是正确的,在资源管理器中点击它可以正常工作。谢谢更新:我发现了问题。请参阅下面我的回答。 最佳答案

windows - cmd - 是否可以临时将可用的驱动器号分配给本地路径?

在Windows上使用cmd,可以很容易地使用pushd将盘符分配给UNC路径:C:\Windows\>pushd\\server\share\pathY:\>popdC:\Windows\>但是我希望能够对本地路径执行相同的操作,因为它会缩短文件路径,而且我必须使用不支持具有很长路径的文件的命令。想法如下,没有在脚本中硬编码G:,因为它可以在另一台机器上使用。substG:.pushdG:\(othercommands)popdsubstG:/d我试过了pushd\\?\%CD%但不幸的是它不起作用......有人对此有魔术吗?谢谢 最佳答案

c++ - 如何检查 Visual C++ 参数是否为有效的驱动器号?

如标题所说,我有一个C++程序,用户传入一个参数。我想验证传递的参数是否是有效的DOS/Windows驱动器盘符(即C:.D:.E:)以及该驱动器是否存在于系统中。我该怎么做呢? 最佳答案 您可以使用GetDriveType()获取驱动器类型-它还会告诉您驱动器是否不存在或不可用或者“正确”的方式是enumeratethroughallthedrives 关于c++-如何检查VisualC++参数是否为有效的驱动器号?,我们在StackOverflow上找到一个类似的问题: