1

如何访问在 COM 接口中定义的枚举?具体来说,我创建了一个 iTunes.Application 的新实例:

var   iTunesApp = WScript.CreateObject("iTunes.Application");

...并且我希望能够使用 COM 中定义的某些枚举

iTunesTrackCOM.idl 文件参考
[...]
枚举
[...]

enum   ITVideoKind { 
   ITVideoKindNone = 0, 
   ITVideoKindMovie, 
   ITVideoKindMusicVideo, 
   ITVideoKindTVShow 
 }

我试过 iTunesApp.ITVideoKindTVShow,但这似乎不起作用。

或者,我如何通过 shell 或类似的东西交互地围绕 iTunesApp 对象?

4

2 回答 2

2

您不能按名称使用枚举。您必须只使用常量:0、1、2...

当您处理位域时,它真的很棒。您必须使用位标志的十进制值,例如IHTMLTxtRange::findText()flags的参数。

于 2009-10-31T03:55:33.057 回答
0

您可以使用 tlb2const 之类的工具从 typelib 生成常量。

请在此处查看我的答案: 是否可以向 COM 互操作调用者公开 C# 枚举,如果可以,如何?

于 2009-10-31T20:18:10.133 回答