I can imagine COM integration being quite useful for controlling applications not directly supported by a plugin.
per usual, get me some source code, and i'll see what i can do[a href="index.php?act=findpost&pid=361753"][{POST_SNAPBACK}][/a]
Don't you have Lua support?
Lua 5.0.2 Copyright (C) 1994-2004 Tecgraf, PUC-Rio
> assert(require "luacom")
> app = luacom.GetObject "Foobar2000.Application.0.7"
> if app then app.Playback:Start() else error("foobar2000 is not running or the COM support is not installed") end
>
Of course, it depends on the capabilities of your integrated Lua. I have found that LuaCOM has a few problems with COM events, but if you don't need that, it is a very convenient solution.
The "0.7" in the AppID refers to the version of the COM server (see foo_comserver), not to the foobar2000 version (which would be 0.9 in this case). Supposedly, it works with - let's say - Windows Media Player as well, though I don't know its COM interface by heart.