Compartilhar via


Função BluetoothSetLocalServiceInfo (bluetoothapis.h)

A função BluetoothSetLocalServiceInfo define informações de serviço local para uma rádio Bluetooth específica.

Sintaxe

DWORD BluetoothSetLocalServiceInfo(
  [in, optional] HANDLE                             hRadioIn,
  [in]           const GUID                         *pClassGuid,
  [in]           ULONG                              ulInstance,
  [in]           const BLUETOOTH_LOCAL_SERVICE_INFO *pServiceInfoIn
);

Parâmetros

[in, optional] hRadioIn

Um identificador do dispositivo de rádio Bluetooth para o qual especificar informações de serviço local. Se FOR NULL, BluetoothSetLocalServiceInfo procurará a primeira rádio Bluetooth local disponível.

[in] pClassGuid

O GUID do serviço a ser exposto. Isso deve corresponder ao GUID no arquivo INF do lado do servidor.

[in] ulInstance

Uma ID de instância para o nó do dispositivo da ID de Plug and Play (PnP).

[in] pServiceInfoIn

Um ponteiro para uma estrutura BLUETOOTH_LOCAL_SERVICE_INFO que descreve o serviço local a ser definido.

Retornar valor

A função BluetoothSetLocalServiceInfo retorna os seguintes valores:

Código de retorno Descrição
ERROR_NOT_FOUND
O rádio Bluetooth especificado não foi detectado.
ERROR_BAD_UNIT
Nenhum rádio Bluetooth foi detectado.
STATUS_INSUFFICIENT_RESOURCES
Recursos suficientes não estavam disponíveis para concluir a operação. Você pode receber esse erro quando mais de 100 PDOs (objetos de dispositivo físico) locais corresponderem aos serviços Bluetooth.
STATUS_PRIVILEGE_NOT_HELD
O chamador não tem os privilégios necessários. Consulte a seção Comentários para obter informações sobre como elevar privilégios.

Comentários

BluetoothSetLocalServiceInfo é uma API de modo de usuário que é usada apenas por desenvolvedores de driver de perfil para disparar a instalação de um serviço local descrito pelo GUID do serviço no pClassGuid.

BluetoothSetLocalServiceInfo gera uma ID de dispositivo de Plug and Play (PnP) na forma de "BTHENUM{ClassGuid}". Por exemplo, "BTHENUM{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx}". Os aplicativos de modo de usuário podem chamar BluetoothSetLocalServiceInfo em tempos subsequentes com o mesmo GUID de serviço, mas com uma ID de instância diferente para criar várias instâncias do perfil do lado do servidor especificado.

Para usar APIs Bluetooth como BluetoothSetLocalServiceInfo, os aplicativos de modo de usuário devem ser vinculados ao BthProps.lib.

Aviso O processo que chama BluetoothSetLocalServiceInfo deve ter o privilégio SE_LOAD_DRIVER_NAME . Um processo em execução no sistema ou em um contexto de administrador pode elevar seu privilégio usando as funções LookupPrivilegeValue e AdjustTokenPrivileges do SDK. Para obter mais informações sobre isso, consulte Instalando um dispositivo Bluetooth.
 
A estrutura BLUETOOTH_LOCAL_SERVICE_INFO é definida no arquivo de cabeçalho BluetoothApis.h do SDK.

Requisitos

Requisito Valor
Cliente mínimo com suporte Versões:_Supported no Windows Vista e posterior.
Plataforma de Destino Universal
Cabeçalho bluetoothapis.h
Biblioteca BthProps.lib
DLL bthprops.cpl; BluetoothAPIs.dll

Confira também

BLUETOOTH_LOCAL_SERVICE_INFO