Обновление VKMM 0.1.2

В процессе портирования программы VKMM сделал давно актуальный фикс – ВКонтакте уже довольно давно присылает 302 редирект на страницу ошибки, вместо прямого кода ошибки HTTP 404. С точки зрения QNetworkReply разумеется редирект не считается ошибкой, что приводило к зависаниям стрима, если плейлист был открыт давно (и ссылки протухли).
Continue reading

Точка входа Qt5 программы и компилятор Visual Studio 2012+

Многие сталкивались с тем что при компиляции студией Qt-проектов (и не только) Windows не хочет использовать стандартную функцию main(), а требует свои WinMain для GUI приложений и при использовании UNICODE, выдавая ошибки линковки вроде этих:
LNK2019: unresolved external symbol main referenced in function __tmainCRTStartup
или
error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup

На более старых версиях проблему можно было отчасти решить, задав точку входа принудительно через
/ENTRY:main
или
#pragma comment( linker, "/entry:main" )
Но сейчас такой способ больше не работает, программа будет падать при старте. Если вам не нужна поддержка WCHAR в параметрах argv, то проще всего слинковать со специальной служебной либой Qt5 для линковки с main(). Библиотека называется Qt5::WinMain:

VKMM (Vkontakte Music Mania) теперь open-source

Мой старый проект (основное развитие в 2012 году) гибридного музыкального плеера VKMM выложен в открытый доступ.

Перед выкладкой выполнил портирование на Qt5. Были сложности с компиляцией Qt5 проекта под Windows, но кажется что (почти) всё работает. Точно есть проблемы с last.fm API и событиями в потоках движка плеера.

VKMM 0.1 @ Windows 8

VKMM 0.1 @ Windows 8

Проект на gitgub: github.com:petrows / vkmm-desktop