From: http://blog.csdn.net/pkueecser/article/details/7287938
fatal error C1083: 無法打開包括文件:"dxtrans.h": No such file or directory
http://blog.waterlin.org/articles/qedit-problem-in-windows-directshow.html
在使用有關 DirectShow 東西的時候,使用了頭文件
#include <qedit.h>
結果,編譯的時候提示如下錯誤:
錯誤 1 fatal error C1083: 無法打開包括文件:"dxtrans.h": No such file or directory c:\program files\microsoft sdks\windows\v6.0a\include\qedit.h 498
這個真是奇怪了,爲啥微軟自己 SDK 裏的東西,都會出現找不到頭文件的問題呢?
解決辦法可以有兩種:
(1) 從其它地方把 dxtrans.h 這個文件拷過來,例如從
Program Files\Windows Mobile 5.0 SDK R2\PocketPC\Include\Armv4i\dxtrans.h Program Files\Windows Mobile 5.0 SDK R2\Smartphone\Include\Armv4i\dxtrans.h D:\Program Files\Windows Mobile 6 SDK\PocketPC\Include\Armv4i D:\Program Files\Windows Mobile 6 SDK\Smartphone\Include\Armv4i
裏拷 dxtrans.h 這個文件出來。
(2) 或者在引用 qedit.h 頭文件的時候,加上這麼幾句:
#pragma include_alias( "dxtrans.h", "qedit.h" )
#define __IDxtCompositor_INTERFACE_DEFINED__
#define __IDxtAlphaSetter_INTERFACE_DEFINED__
#define __IDxtJpeg_INTERFACE_DEFINED__
#define __IDxtKey_INTERFACE_DEFINED__
#include "Qedit.h"
也可以。
微軟的MSDN上還有對這個問題的討論,看來真是微軟自擺烏龍了。