草庐IT

C++ - 直接写入内存(内核)

我之前也问过同样的问题,但是我的帖子不知为何被删除了。无论如何,我正在尝试使用C++并编写一个允许我直接访问内存并向其中写入内容的程序。我听说我需要对内核做一些事情,因为它是连接操作系统和应用程序的“桥梁”(我认为)。无论如何,我可以为内核下载一些sdk吗?我在我之前的帖子(一段时间后被删除)中说过,这样做的原因是因为我想按照我大学教授的要求尝试让Windows7崩溃。(所以请不要问我诸如“你为什么要让windows崩溃?”之类的问题……)任何帮助将不胜感激。 最佳答案 如果您对使用内核感兴趣,您可能正在寻找Windows驱动程序工

windows - 在驱动程序级别检索进程的命令行参数

你好,我正在编写一个minifilter驱动程序来拦截来自某个进程的所有irp数据包,比如a.exe。因此,在驱动程序代码中,可以通过对启动进程的命令行参数应用检查来完成。有谁知道如何检索命令行参数??提前致谢。 最佳答案 没有受支持的方法可以在内核模式中执行此操作。事实上,试图从内核访问用户模式进程信息通常是一件痛苦的事情。我建议向用户模式服务发出请求,然后它可以找到该信息并将其传递回您的内核组件。但是,有一个未记录的方法可以做到这一点。如果你能得到EPROCESS的句柄目标进程的结构,您可以获得指向PEB的指针(进程环境bloc

windows - 计划任务调用的批处理文件在计划时抛出错误,双击时运行正常

我有一个映射网络驱动器的批处理文件。大约一周前密码过期,因此调用批处理文件的程序开始抛出错误。我已经在批处理文件中更新了密码,当我双击批处理文件时,驱动器映射正常。但是,当计划任务启动时,出现以下错误:Logonfailure:unknownusernameorbadpassword.有人见过这个吗?我已经尝试重新创建计划任务,但它似乎没有任何区别。编辑我已经更新了计划任务的属性,这不是问题所在。问题似乎是批处理文件中的用户名和密码。奇怪的是,如果我以交互方式登录并双击可执行文件,一切正常。作业上次运行时抛出“信号量超时期限已过期”错误。我以前从未见过这个特殊的错误,但似乎它实际上是在

windows - Windows 10 无法识别 Arduino Uno

我有一个ArduinoUno,无论我尝试过什么,它都不会被我的电脑识别。我在64位戴尔Inspiron笔记本电脑上运行Windows10家庭版。已通过Arduino网站上的官方可执行文件安装arduino软件和驱动程序。正确的.inf文件位于Arduino/drivers目录中。预期的行为是通过USB插入Arduino,转到设备管理器,然后在端口部分或其他设备部分找到Arduino。没有端口或其他设备部分。但是有一个“未知USB设备(设备描述符请求失败)”通用串行总线Controller部分中的行。这是Arduino,因为当我拔掉Uno时,这个设备从USBController部分消失了

c - 如果使用 printf,驱动程序 "output"会去哪里?

如果我要创建一个驱动程序,比如说Hook用于打开文件的Windows函数。如果在我的驱动程序中我告诉钩子(Hook)printf("something"),当驱动程序打开并且我打开一个文件时,printf会将文本显示到哪里? 最佳答案 如果您想从驱动程序输出文本用于调试和实验目的,请使用DbgPrintEx.可以通过Sysinternals查看输出DebugView或调试器。 关于c-如果使用printf,驱动程序"output"会去哪里?,我们在StackOverflow上找到一个类似

c++ - windows下驱动程序编程入门方法

我想开始学习windows下的驱动程序编程。我从未编写过驱动程序,我正在寻找如何开始的信息。任何教程、链接、书籍推荐以及我应该从什么开发工具包入手?(WDF会好吗?)我真的很想按照时钟编程linktext感谢您的帮助。 最佳答案 我将从downloadingthewindowsdriverkit(WDK)开始.之后,您可以决定需要哪种驱动程序。文件系统驱动程序?(可能不是),RS-232驱动程序?USB驱动程序?他们都遵循不同的规则和怪癖。WDK附带了适用于大多数类型驱动程序的示例驱动程序,应该可以让您快速步入正轨。

windows - 没有设备的设备驱动程序?

我正在创建一个需要使用一些内核级模块的应用程序,为此我将应用程序分为2个:一个用户级程序和一个内核级程序。在阅读了设备驱动程序并浏览了一些教程之后,我有点困惑。是否可以有一个没有任何特定设备关联的设备驱动程序?除了在内核模式下工作的设备驱动程序(内核代码或其他东西)之外,还有其他东西吗?反病毒程序和其他此类应用程序如何在内核模式下运行?设备驱动程序是正确的方法还是我遗漏了什么? 最佳答案 是的,设备驱动程序可以在没有实际硬件(即设备)连接到机器的情况下工作。想一想模拟连接的SCSI驱动器(CD-ROM等)以安装ISO镜像的不同程序。

c++ - 内核和驱动程序有什么区别?

由于我的主要语言是C++,并且因其强大的硬件功能而广受赞誉,因此我决定进一步学习计算机体系结构。在浏览某些东西时,我偶然发现了设备驱动程序。因此,自然而然地,我决定查找它。据我了解,设备驱动程序是处理特定硬件组件的计算机程序。我也知道内核是一个计算机程序,可以充当软件到硬件的桥梁。由于某种原因,我的头脑无法区分两者。在Windows平台上,有人可以向我解释差异并解释他们所扮演的不同角色。提前致谢。 最佳答案 这些术语的定义不是很好。但这是关于这个话题的一些杂谈...请注意,当您安装Windows(或Linux,MacOS或其他操作系

windows电脑关机开机后没声音,重启就有声音故障处理方法

今天遇到一件非常奇葩的windows电脑, 从关机状态下进入系统没有声音,且从以下几点判断声卡硬件及驱动不存在故障,详见如下:1、开机后任务栏右下角声音图标正常2、声音设置——扬声器/麦克风(Realtek(R)Audio)正常;3、windows+x键,选择“设备管理器”,找到“音频输入与输出”,麦克风/扬声器,右击属性,均显示这个设备运行正常。4、windows+r运行services.msc,找到声卡对应的服务---WindowsAudio,鼠标左键选中,右键选择属性——常规——启动类型——自动。发现正常呀。 5、卸载驱动后,用驱动精灵等重新安装推荐的声卡驱动,现象依旧—— 从关机状态下

windows - 获取特定驱动器的 GUID

我想找出特定驱动器盘符的Drive-GUID。我有以下代码:FunctionGetVolumeNameForVolumeMountPoint(lpszVolumeMountPoint:LPCTSTR;lpszVolumeName:LPTSTR;cchBufferLength:DWORD):BOOL;stdcall;external'kernel32.dll'name'GetVolumeNameForVolumeMountPointW';procedureTForm1.Button1Click(Sender:TObject);varBuffer:array[0..50]ofAnsiCha