包含ksmedia.h后驱动程序中的编译警告

时间:2018-04-17 12:04:04

标签: c++ winapi driver kmdf

我正在开发基于Microsoft Toaster KMDF filter driver example的驱动程序。我已添加标题windef.hks.hksmedia.h,现在我看到以下警告:

警告#1:

  

\\...\ksmedia.h(732): warning RC4011: identifier truncated to 'STATIC_KSDATAFORMAT_SUBTYPE_WAV'

ksmedia.h的第732行读取:

#if !defined( STATIC_KSDATAFORMAT_SUBTYPE_WAVEFORMATEX )

警告#2:

  

\\...\ksmedia.h(7795): warning RC4067: unexpected characters following '#endif' directive; newline expected

ksmedia.h的第7795行写道:

#endif _AUDIO_CURVE_TYPE_

即使我有另一个包含头文件的项目(不是KMDF),并且没有显示警告,也会发生这种情况。

你能帮我理解一下这个原因吗?我可以做些什么来删除警告吗?

1 个答案:

答案 0 :(得分:1)

根据你的错误,我可以说你直接或间接(通过另一个包括)添加行:

#include <ksmedia.h>
rc 文件中的

。当RC(资源编译器)进程ksmedia.h时,他给出了这个警告和错误。因为ksmedia.h未设计为由 RC 编译器处理。还包括windows.hfilter.h到rc(如示例中)也是错误的意义。如果需要 RC 的某些定义/宏 - 仅包括winres.h