Compartilhar via


Installing an LSP

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Para evitar um erro quando você instalar um LSP, você deve compreender como LSPs estão instalados e como eles trabalho com sockets do Windows (Winsock). Para informações sobre cadeias provedor, incluindo ilustrações de como múltiplo LSPs estiverem instalados, consulte Protocolos em camadas e cadeias do provedor.

Windows Embedded CE inclui codificar exemplo para um LSP bem como o correspondente LSP instalador codificar na pasta %_WINCEROOT%\Public\Common\SDK\Samples\TSP\LSP. Para obter mais informações sobre LSP, consulte o artigo Unraveling de Mysteries of Writing um Winsock 2 Layered Service Provider, que é publicado noMSDN.

Observação

Este tópico fornece informações sobre como instalar LSPs em Windows CE 5.0 e posterior.Nas versões anteriores, ordem encadear LSP em CE exclusivamente é determinado pela ordem de instalação.

Implementação LSP em Windows incorporado CE

A seguinte lista mostra as diferenças entre a implementação de LSPs na Windows Embedded CE e área de trabalho.

  • Todos os Installers LSP executar na inicialização dispositivo. O catálogo de todos os provedores de serviço instalado não é mantido entre reinicializações.
  • A ordem de cadeias LSP é determinado pela ordem na quais rotinas instalação executar.
  • O WSCWriteProviderOrder função não com suporte em Windows Embedded CE.
  • O utilitário Sporder.exe não com suporte em Windows Embedded CE.
  • O WSCEnumerateProviders função retorna o atual catálogo e não o catálogo a partir de tempo o aplicativo foi iniciado.
  • LSPs tem instaladores cooperativas.

Práticas recomendadas para instalar um LSP

Para Selecione ao trabalho com soquetes do tipo TCP/IPv4, TCP/IPv6, UDP/IPv4 e UDP/IPv6 simultaneamente, você deve seguir diretrizes instalação lsp.

Por design, se você selecionar chamar com soquetes criados pelo provedor diferentes cadeias, a falha chamar. No entanto, usando os provedores Microsoft instalado, sockets do Windows (Winsock) determina que TCP/IPv4, TCP/IPv6, UDP/IPv4 e o UDP/IPv6 são do mesmo provedor porque eles todos são tratados pelo mesmo ProviderId.

Falha ao seguir as diretrizes instalação LSP resulta em erros inesperados pois sistema de rede codificar freqüentemente espera que Selecione não irá falhar.

A seguinte lista mostra as diretrizes instalação LSP você deve seguir:

  • Se você instalar um LSP sobre TCP, você deve também instalá-la pela UDP.
  • Se você instalar um LSP para IPv4, você deve também instalá-lo para IPv6
  • Use o mesmo identificador encadear (GUID) para cada uma dessas instalações. De exemplo, você deve instalar um LSP sobre todas as cadeias de tipo TCPv4, TCPv6, UDPv4 e UDPv6 com o mesmo GUID
  • Use um identificador encadear diferentes para todas as outras instalações.
  • Em Windows Embedded CE, instalando de LSPs por demanda deve ser evitado porque alterações na LSP podem não ter sido aplicadas para todos os aplicativos. Soquetes que já foram abertos não usará o novo lsp. O LSP armazena em cache o catálogo de provedores serviços instalados e qualquer alteração que tenha sido afetada após inicialização só estarão visível para o LSP sobre o próximo reiniciar. De exemplo, se um aplicativo servidor cria um Soquete, o Soquete usará o LSP que foi instalado no tempo inicializar. Se o LSP estiver instalado novamente, todos os novos soquetes que o aplicativo cria usará o novo lsp. Se o aplicativo chama o Selecione função nesses dois soquetes e, em seguida, o chamar falhará porque os soquetes têm dois provedores diferentes.

Cada provedor serviço DLL deve carregar próprio. Isso é feito através de implementação codificar a instalação em um exportado DllRegisterServer função e, em seguida, adicionando um novo valor para o Registro para especificar a ordem carregar. O seguinte procedimento explica como instalar um LSP com cada protocolo carregando próprio.

Para instalar o LSP

  1. Copiar a codificar instalação LSP em um DllRegisterServer função.

  2. Adicionar uma subchave Registro para a HKEY_LOCAL_MACHINE\COMM\WS2\LSP chave Registro.

    Usando o LSP SSL como um exemplo, você faria adicionar a HKEY_LOCAL_MACHINE\Comm\WS2\LSP\SSL subchave Registro.

  3. Para esta subchave, adicionar as entradas Registro mostradas a seguinte tabela.

    Valor : tipo Descrição

    A DLL: REG_SZ

    Nenhuma usar como padrão. O nome do DLL para carregar.

    Ordem: DWORD

    O padrão é 0xFFFFFFFF. A ordem na qual o LSP carrega, relativo a de outros provedores. O LSP com o valor inferior carrega pela primeira vez.

    Entrada: REG_SZ

    O padrão é DllRegisterServer. O ponto de entrada DLL para a função instalação.

    Usando o LSP SSL como um exemplo, o seguinte exemplo mostra as configurações Registro faria adicionar:

    [HKEY_LOCAL_MACHINE\Comm\WS2\LSP\SSL]

        "DLL"="ssllsp.dll"

        "sinalizadores" = dword:1

        "order" = dword:200

  4. Quando sockets do Windows (Winsock) for carregado, ele enumera todas as chaves sob a HKEY_LOCAL_MACHINE\COMM\WS2\LSP subchave. Para cada subchave que tenha uma propriedade DLL, ele executa uma LoadLibrary chamada de função no valor dessa propriedade.

    Se chama bem-sucedido, sockets do Windows (Winsock) o ponto de entrada DLL como especificado na Entrada valor.

    Se uma entrada Registro está sendo a subchave, sockets do Windows (Winsock) chamará o valor usar como padrão para essa entrada.

See Also

Concepts

Multiple Transport Protocols