【问题标题】:Compile IDL file error编译 IDL 文件错误
【发布时间】:2012-08-13 14:34:12
【问题描述】:

我正在使用 VS 2008 Pro。 我有 1 个 idl 文件,其中包含:

module views {

    // Introduced in DOM Level 2:
    interface [
        ObjCCustomImplementation,
        OmitConstructor
    ] AbstractView {
        readonly attribute Document document;
        readonly attribute Media styleMedia;
    };

}

(仅此而已,文件中没有更多内容。) 当我构建文件时(右键单击文件并按编译,出现以下错误:

AbstractView.idl ..\page\AbstractView.idl(30):错误 MIDL2025:语法错误:期望“接口”附近的类型规范 ..\page\AbstractView.idl(31):错误 MIDL2026:无法从早期的语法错误中恢复;中止编译

有什么问题?我该如何解决这个问题?

【问题讨论】:

    标签: idl


    【解决方案1】:

    也许应该是其他方式。据我记得,首先你必须定义属性,然后是接口本身。这个link 很有用。

    【讨论】:

    • 我尝试使用如下属性: module views { // 在 DOM Level 2 中引入: [ uuid(ba209999-0c6c-11d2-97cf-00c04f8eea45), version(1.0) ] interface AbstractView { readonly属性文档文档;只读属性 Media styleMedia; }; } 但同样的错误发生
    • 这可能是因为您以错误的方式使用界面。你如何导入它?您能否再展示一些您的代码?
    • 其实我对idl了解不多。我正在移植 WebKit 并遇到了问题。它在构建 MIDL 时发送。我真的不明白这一点。
    • 好吧,IDL-compiler 的问题是它所有的错误信息都太抽象了。因此,您必须能够识别出现此消息的情况。正如我之前写的那样发布你的 idl-module 的完整代码,也许我们会一起发现一个错误:)
    • besworland,非常感谢。我很抱歉我的愚蠢。事实上,上面引用的源代码都在文件中。我将更多地研究源代码并尝试找到向您描述的方式。再次感谢。
    【解决方案2】:

    这可能是 CORBA IDL 文件而不是 MIDL 文件。

    【讨论】:

      猜你喜欢
      • 2013-09-26
      • 2017-06-21
      • 2011-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-01
      相关资源
      最近更新 更多