Мне нужно заполнить членов структуры:
typedef struct SPEVENT
{
SPEVENTENUM eEventId : 16;
SPEVENTLPARAMTYPE elParamType : 16;
ULONG ulStreamNum;
ULONGLONG ullAudioStreamOffset;
WPARAM wParam;
LPARAM lParam;
} SPEVENT;
Информация о том, как это использовать, немногочисленна. Единственные примеры для заполнения это от других пользователей, но ничего официального.
Приложение, получающее это событие, должно получить строку. С моим подходом это не работает: строка "".
Кто-нибудь может мне сказать, заметил ли он что-то явно неправильное в моей попытке?
wstring wsBookmark = L"MyBookmark";
CSpEvent nBookmarkEvent;
nBookmarkEvent.eEventId = SPEI_TTS_BOOKMARK;
nBookmarkEvent.elParamType = SPET_LPARAM_IS_STRING;
nBookmarkEvent.ullAudioStreamOffset = 0;
nBookmarkEvent.lParam = _wtol(wsBookmark.c_str());
nBookmarkEvent.wParam = (LPARAM)wsBookmark.c_str();
Как я уже объяснил, официального руководства по заполнению этих членов, похоже, не существует.
На данный момент я нашел следующие коды пользователей:
https://github.com/m-toman/SALB/blob/master/sapi/htstts.cpp
В этой ссылке я вижу это:
CHECKASSERTId(( !wcscmp( (WCHAR*)Event.lParam, szwBMarkStr ) ), tpr, IDS_STRING9);
Но я понятия не имею, поможет ли это мне.
Спасибо за любой вклад или помощь !!