ISpLexicon::AddPronunciation
9/8/2008
Este método adiciona pronúncias palavra e partes da fala (POS) para o usuário léxico. SAPI não modificará a palavra se ortográfico, pronúncia e Pos forem o mesmo como uma entrada existente no léxico de usuário. Uma palavra pode ser adicionada sem pronúncia passando em NULL in a pszPronunciation parâmetro.
Syntax
HRESULT AddPronunciation(
const WCHAR* pszWord,
LANGID LangID,
SPPARTOFSPEECH ePartOfSpeech,
const SPPHONEID* pszPronunciation
);
Parameters
- pszWord
[no] Ponteiro para a palavra para adicionar.
- LangID
[no] Identificador de idioma da palavra. O usar como padrão usuário de fala será usado se LangID é omitido. Comprimento deve ser igual ou menor que SP_MAX_WORD_LENGTH.
- ePartOfSpeech
[no] Parte da fala. Valores possíveis são definidos pelo SPPARTOFSPEECH ) enumeração.
- pszPronunciation
[no] Ponteiro para a pronúncia da palavra no telefone NUM terminada por caractere nulo definido. Várias pronúncias podem ser adicionadas para uma única palavra. O comprimento deve ser igual ou menor que SP_MAX_PRON_LENGTH. pszPronunciation pode ser NULL para indicar não pronúncia.
Return Value
A seguinte tabela mostra os valores possíveis de retorno.
Value | Description |
---|---|
S_OK |
Function completed successfully. |
E_INVALIDARG |
Pelo menos um dos parâmetros é inválido ou incorreto. |
SP_ALREADY_IN_LEX |
Mesma pronúncia da palavra já existe no léxico de usuário. |
SPERR_APPLEX_READ_ONLY |
Não é possível adicionar uma palavra para aplicativo léxico. |
SPERR_UNINITIALIZED |
A interface não foi inicializada. |
E_OUTOFMEMORY |
Disponível excedido memória. |
FAILED(hr) |
Mensagem de erro apropriadas |
Remarks
Consulte a documentação no ISpPhoneConverter Para obter mais informações nos conjuntos de telefone.
Example
A seguinte é um exemplo deste método.
HRESULT hr;
CComPtr cpLexicon;
hr = cpLexicon.CoCreateInstance(CLSID_SpLexicon);
// 0x409 for English
LANGID langidUS = MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US);
CComPtr cpPhoneConv;
SPPHONEID wszId[SP_MAX_PRON_LENGTH];
if(SUCCEEDED(hr))
{
hr = SpCreatePhoneConverter(langidUS, NULL, NULL, &cpPhoneConv);
}
if(SUCCEEDED(hr))
{
hr = cpPhoneConv->PhoneToId(L"r eh d", wszId);
}
if(SUCCEEDED(hr))
{
hr = cpLexicon->AddPronunciation(L"red", langidUS, SPPS_Noun, wszId);
Requirements
Header | sapi.h, sapi.idl |
Library | sapilib.lib |
Windows Embedded CE | Windows CE .NET 4.1 and later |