2012-11-27 40 views
0

我正在开发基于.Net框架4的小程序并使用C#语言。
我正在使用一个.Net库,它本身使用AVIFile Windows API的函数。Windows API返回代码值

使用AVIStreamRead函数时出现错误。
下面是AVIStreamRead功能的MSDN文档:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd756849(v=vs.85).aspx

我想获得从结果整数值我的错误的详细信息。
文档页面列出了以下三个返回代码:

  • AVIERR_BUFFERTOOSMALL
  • AVIERR_MEMORY
  • AVIERR_FILEREAD

但我在哪里得到相应的整数值?

+0

它们的定义(的地方),在您的项目(或第三方库,你含)。捕获结果并与已知错误值进行比较,以了解如何处理它。 – Chad

回答

2

哟可以从Vfw.h中获得它们。

#define AVIERR_UNSUPPORTED  MAKE_AVIERR(101) 
#define AVIERR_BADFORMAT  MAKE_AVIERR(102) 
#define AVIERR_MEMORY   MAKE_AVIERR(103) 
#define AVIERR_INTERNAL   MAKE_AVIERR(104) 
... 

要转换SCODE错误代码,你可以使用

WORD SCODE_CODE(SCODE sc); 
+0

谢谢你的回答。但是哪个Windows DLL提供了SCODE_CODE函数。我搜索了一段时间,但没有成功。 – user1139666

+0

请查看此链接,请http://msdn.microsoft.com/ru-ru/library/windows/desktop/ms687314(v=vs.85).aspx在MSDN页面的底部有关于需求,标题他们需要的文件和dll(在你的情况下,你需要的头文件是winerror.h)这是MSDN中WinAPI描述的常用格式。所以,如果你有问题找到一个标题首先看这个部分。 –

+0

如果解决方案有帮助,请将其标记为已接受。 –