绿色就代表编译成了
编译1(2分03):
最小驱动代+int3(VS2013+WDK8.1):
#include <ntddk.h>
VOID DriverUnload(PDRIVER_OBJECT driver)
{
DbgPrint("Driver is unloading...\r\n");
}
NTSTATUS
DriverEntry(
PDRIVER_OBJECT driver,
PUNICODE_STRING RegistryPath
)
{
__asm int 3
DbgPrint("Driver Entered!\r\n");
driver->DriverUnload = DriverUnload;
return STATUS_SUCCESS;
}
源代码调试:
注意点:
1工程目录文件夹最好放在盘的根目录里(工程不能移来移去,要跟sys拖进去时的sys路径一致),方便windbg找路径。
2在windbg中打开
3源码调试要设置这个(测试了一下,有没有这个也无所谓吧)
可以看到,成功在源码上断了下来。
编译2(10分30):
加入了.asm文件:
14分加入了头文件
1在.c里调用.asm中的函数
先观察一下.asm里定义的Asm_CPUID函数
2在.asm里调用.c中的函数
3在.asm里使用.c中定义的变量
.c中定义data。
在.asm使用data
23分20编译3(在.asm里使用.c中定义的变量与函数):
4在.c里使用.asm中定义的变量
再加一行,也还是编译不了
编译4:这里是编译不出来的,老师也不管了
VT是英特尔
AMD是VMX
周壑的教程看了有七八集,但是到了第6集,实验就做不出来了。我打算把环境搞成跟他一样再重新高一下