I downloaded a zipped archive from Apple that consists of a C++ header file and source. Included in this was a help file. For some reason this help file opens but I cannot read the content. Is there any other documentation outside of a help file for this? For c++ or c#?
4 Answers
If you are on Windows, you probably are looking for the "iTunes COM for Windows SDK".
Get a free ADC login here if you haven't done so already. Once you have done that, you can go to http://connect.apple.com and log in.
Click on "Developer Tools", and somewhere in the massive list of results is "iTunes COM for Windows SDK". Download that, it's just an ordinary zip file, and somewhere in there is a directory named iTunesCOMWindowsSDK. In that directory, there is a iTunesCOM.chm file that contains all the reference material you need.
If this is the help file you already have, you could consider decompiling the chm file using the hh.exe tool that comes with Windows.

- 900
- 7
- 10
-
Yes.. this is the same zip that I have. The issue I have is that the help file contains the TOC but selecting a topic does not display anything in the right side pane. I tried using the hh.exe from the command line (as you suggested) but haven't had any luck. I have never used this utility before. I tried this: hh.exe mk:@MSITSTore:{pathtohelp}::/main.html It just seemed to open the help file but with the same results.. – Nick Jun 05 '10 at 02:10
-
This answer seems to be out dated? – Steve Byrne Dec 16 '13 at 05:05
-
1@StevenByrne - yes this is outdated, see my answer. – Hogan Apr 04 '14 at 12:20
-
It's still there as of today. The zip file also contains a chm with documentation which seems to be slightly more up-to-date than in the answer from @Hogan – Lennart Aug 07 '18 at 09:30
-
@Lennart -- I don't see it, where is it exactly? – Hogan Aug 07 '18 at 18:04
-
@Hogan Not sure if a direct link works: https://download.developer.apple.com/Applications/iTunes_COM_for_Windows_SDK/iTunes_COM_9.1.0.80.zip Otherwise here's a screenshot: https://imgur.com/HdseSYo – Lennart Aug 08 '18 at 07:36
It seems the only source for the iTunes COM documentation is now archived on github by https://stackoverflow.com/users/188792/joshkunz
The nice web page is here
http://www.joshkunz.com/iTunesControl/
And the github project is here
-
-
@spankmaster79 - except for new features that are not documented in the COM (or does exist). For example, changing the media type. I'd **LOVE** to hear from someone who knows the API for that. – Hogan Apr 04 '14 at 12:19
-
and I'd love a tool like tune-instructor on windows... so let's start developing something like it and find out what iTunes actually can do in Windows – spankmaster79 Apr 04 '14 at 14:34
-
Also rather that coding in C++/C#, try Javascript (dual COM interfaces be praised). Here is an example to get you inspired: http://projects.nateweiss.com/nwdc/itunes/scripts/ For example, here is a cscript to add a file to the library: ``` var iTunesApp = WScript.CreateObject("iTunes.Application"); var mainPlaylist = iTunesApp.LibraryPlaylist; mainPlaylist.AddFile(path); ``` – David Airapetyan Nov 14 '21 at 05:50
Solved.. The problem was a Windows Security feature was blocking the compiled help file from opening. I found the solution here:

- 19,198
- 51
- 185
- 312
Note: this is not relevant but it feels like this code complements the question nicely - I would have put this in comments but comments don't seem to allow code formatting (d'uh).
Anyway, here is a C# example of how to dump all songs in the library:
dynamic iTunesApplication = Activator.CreateInstance(Type.GetTypeFromProgID("iTunes.Application"));
dynamic mainPlaylist = iTunesApplication.LibraryPlaylist;
for (int i = 1; i <= mainPlaylist.Tracks.Count; i++)
{
dynamic track = mainPlaylist.Tracks.Item(i);
Console.WriteLine(track.Location);
}
Thanks to Hogan for the great pointer to the documentation!

- 5,301
- 4
- 40
- 62