Windows Live Messenger & quot; Что я слушаю & quot; функция

Как я могу использовать функцию «Что я слушаю» в Windows Live Messenger? Как я могу связаться с WLM для отправки информации о песне, чтобы Messenger мог установить статус? Я пишу в C ++ (Qt)

Я искал всю сеть, но ничего не нашел об этом, даже на других языках программирования.

РЕДАКТИРОВАТЬ:

Похоже, я не прояснил себя. Я не хочу прохождение. Я хочу знать, есть ли API, или библиотека, или что-то еще, чтобы взаимодействовать с Windows Live Messenger для использования этой функции, как это делают медиаплееры, такие как WMP, Winamp и iTunes.

Я искал API Live Connect, но ничего не нашел по этому поводу.

3

Решение

Поскольку существует много проектов с открытым исходным кодом, реализующих эту функцию, которые вы можете проверить (например, MPC-HC, PsyMP3, Songbird … и т. Д.), Я просто объясню, как это делается:

Сначала вы создаете строку Unicode, которая выглядит следующим образом:

Игрок \ 0Type \ 0Playing \ 0Format \ 0Artist \ 0Type \ 0Album \ 0GUID \ 0

(\ 0 не NUL, поэтому обязательно избегайте их)

  • Player: имя вашего музыкального плеера
  • Тип: Тип носителя, здесь: «Музыка»
  • Игра: 1 для игры, 0 для остановки
  • Формат: строка рядом с «Сейчас играет», например: A3FPlayer: {1} - {0}
  • Исполнитель, Название & Альбом не требует пояснений
  • GUID: WMCONTENTID

Затем вы создаете COPYDATASTRUCT следующим образом:

COPYDATASTRUCT data;
data.dwData = 0x0547; //1351 decimal
data.lpData = (PVOID)(LPCWSTR)MsnMsg;
data.cbData = MsnMsgSize * 2 + 2;

И, наконец, передать эту структуру MsnMsgrUIManager ручка, которую вы найдете с FindWindowEx:

HWND hWnd = FindWindowEx(NULL, NULL, L"MsnMsgrUIManager", NULL);
SendMessage(hWnd, WM_COPYDATA, (WPARAM)NULL, (LPARAM)&data);
2

Другие решения

a3f дает замечательный ответ с небольшим количеством кода. Тем не менее, если вы находите его ответ немного запутанным, вот какая-то ссылка на «API», которую я написал, когда писал код интерфейса для PsyMP3. Единственное, что я хотел бы сказать, это то, что я написал бы часть GUID как «WMContentID», поскольку именно это я видел, когда Windows Media Player передавал в MSN, когда я отслеживал сообщения окна с помощью WinSpy.

В любом случае, моя документация для рассматриваемого интерфейса находится здесь:

http://code.google.com/p/psymp3/wiki/MsnMsgrUiManager

1

По вопросам рекламы [email protected]