包含.inl文件实际上并不包含它

时间:2019-07-18 12:17:26

标签: c++ windows kernel inline

今天,我遇到了一个示例,该示例显示了Windows内核模式驱动程序中.inl文件的用法。我有以下代码:

Wdk.h

#include "Wdk\RtlKernel.inl"

// In function
#define SuccessCheck$(x) if (!NT_SUCCESS(vStatus = (x))) break

SuccessCheck$(RtlInitSystem());

RtlKernel.inl

inline auto RtlInitSystem() -> NTSTATUS
{
    if (GetSystemVersion() == SystemVersion::Unknown)
    {
        return STATUS_NOT_SUPPORTED;
    }

    return STATUS_SUCCESS;
}

我的头中包含文件,但是当我尝试编译项目时,该函数(RtlInitSystem())未定义。可能是什么问题?我是否需要任何特殊设置才能在内核模式驱动程序中使用内联文件?一切都在同一个命名空间中,文件包含在项目中。

0 个答案:

没有答案