comitunescom4j

ITunes doesnt seem to expose COM interfaces for its new Movement and Work fields


I use Com4j to let my Java app comunicate with iTunes on Windows, I saw that my generated classes dont contain methods to let me update movement and work fields like I can update other fields such as artist or album.

So I regenned the classes using

  c:\Code\jthink\opensrc\com4j-20120426-2>java -jar tlbimp.jar -o C:\Code\jthink\SongKong\src\main\java -p com.jthink.songkong.itunes  "C:\Program Files\iTunes\iTunes.exe"

against the latest 12.6 iTunes exe and they still arent here. (I would expect them in IITFileOrCDTrack.java) am I doing something wrong or does this mean that iTunes have to explicity code to expose there new fields and they have decided not to.

So does that mean iTunes has to explicity code a new COM interface to make these fields accessible to other programs

Note these new fields are available via applescript on a Mac machine


Solution

  • As stated in above comment you basically have two options:

    1. File a bug with Apple and wait (possibly indefinitely)
    2. Use the grouping field instead

    Personally, I have found the grouping field to accomplish the role of 'subcategory'. While I realize it is less ideal than having the ability to utilize both movement and work fields, I have been able to accomplish my desired functionality via grouping thus far.