При преобразовании этого примера CONSOLE в полную реализацию диалогового окна я столкнулся с очень «простой проблемой». SendMessage () (строка 283) возвращает ноль,
GetLastError показывает 0x578 - неверный дескриптор окна.
http://read.pudn.com/downloads51/sourcecode/windows/multimedia/175678/msgapitest.cpp__.htm
(https://developer.skype.com/Download/Sample...example_win.zip)
C ++ 2005 Studio Express Edition. Инструкции
http://forum.skype.com/index.php?showtopic=54549
Предыдущий вызов с использованием HWND_BROADCAST работает, и Skype отвечает, как и ожидалось, поэтому я знаю, что Skype установлен и работает правильно.
Дескриптор, который я использую, является значением wParam из ответного сообщения Skype, как в коде. Это не ноль, но я не уверен, есть ли способ проверить это кроме SendMessage.
Скомпилированное приложение из этого примера кода C ++ (см. Zip-загрузку) действительно работает, поэтому я в замешательстве. Я кодирую сообщение с помощью UTF8 и создаю экземпляр COPYDATASTRUCT в своем приложении, заполняю его, затем вызываю SendMessage () с указателем COPYDATASTRUCT в lparam. Скайп не отвечает и не подчиняется. Я что-то упускаю здесь очевидное?