Я использую pFileObject-> FileName, чтобы получить имя файла, открытого в режиме ядра фильтра driver.This Имя исполняемого файла, возвращаемый это в виде UNICODE_STRING. Я хочу преобразовать его в std String. Что такое метод ??? Пожалуйста, приводятся в качестве примера, если это возможно ... Ниже приведен кодUNICODE_STRING к StD Строка преобразования
NTSTATUS FsFilterDispatchCreate(
__in PDEVICE_OBJECT DeviceObject,
__in PIRP Irp
)
{
PFILE_OBJECT pFileObject = IoGetCurrentIrpStackLocation(Irp)->FileObject;
DbgPrint("%wZ\n", &pFileObject->FileName);
return FsFilterDispatchPassThrough(DeviceObject, Irp);
}
Две вещи, которые вы никогда не должны делать в драйвере устройства: при условии, что работает оператор * new * по умолчанию и предполагается, что существует допустимая кодовая страница. Do ** not ** используйте std :: string в драйвере. –
Как отметил Ханс, этот план является не стартером. В режиме ядра MSVCR90.DLL отсутствует. –
@Hans Я не планирую использовать std :: string в KM, а я буду использовать его в UM –