我试图通过使用结构
来保存某些数据,如某些位图typedef struct _BITMAPDATA
{
CHAR* bitmapData;
ULONG bitmapSize;
}BITMAPDATA,*PBITMAPDATA;
我已经通过过滤器驱动程序创建了这些位图,位图工作正常,但如何将该位图存储在硬盘等持久存储中。这样每当系统崩溃或意外关闭时,驱动程序必须存储在持久存储中创建的所有位图,并且在系统重新启动时,它将重新加载它们。
答案 0 :(得分:1)
如果系统崩溃或意外关闭,您无法确定是否有任何问题,包括保存数据。您可以尝试保存数据,但不能保证成功。您可以使用内核文件处理API,例如ZwWriteFile。您可以注册一个bug check callback routine,它会在发生错误检查(即系统崩溃)时将您的数据写入文件但是之前说过 - 由于事件的性质而无法保证成功 - 发生的错误可能会阻止文件写作,例如。