CE Invoke
9/8/2008
Este amostra de código é nomeado CEInvoke. Ele demonstra um mecanismo de uso geral para executar remotamente software usando a interface Remote API (RAPI).
Área recurso
APIs relevantes
- CeRapiInvoke (RAPI) função
Projetos
Há dois projetos para este exemplo:
- Servidor
Essa é a codificar mobile_device-side. O projeto cria um chamado DLL CeInvoke.DLL que contém métodos que são chamados por área de trabalho o cliente programa.
- Cliente
Essa é a codificar Desktop-side.
O uso
O projeto servidor será compilar "ceinvoke.dll" Durante o projeto cliente será compilar "ceinvoke.exe".
Para executar o amostra de código
Navegar para um arquivo solução (*.sln) e clique duplo-la.
Por padrão, o arquivo solução cliente é copiado para a seguinte pasta:
C:\Arquivos de programas\Windows Mobile 6 SDK\Samples\PocketPC\CPP\win32\Ceinvoke\Client
Por padrão, o arquivo solução servidor é copiado para a seguinte pasta:
C:\Arquivos de programas\Windows Mobile 6 SDK\Samples\PocketPC\CPP\win32\Ceinvoke\Server
Microsoft Visual Studio 2005 inicia e carrega a solução.
Criar a (soluçãoCTRL + SHIFT + B).
Implantar a solução (F5).
Se você não tiver instalado o SamplePrivDeveloper Certificado, você terá que para que fiquem seus projetos DLL e CAB assinado corretamente.
Para instalar o Certificado de área de trabalho de janelas
Clique em Iniciar > Executar.
Digite o caminho-nome SamplePrivDeveloper.pfx Certificado e clique OK. Por padrão, isso está localizado na seguinte pasta:
C:\Program Files\Windows Mobile 6 SDK\Tools\Security\SDK Development Certificates
Clique duas vezes SamplePrivDeveloper.pfx ícone Certificado. O Assistente de Importação Certificado é exibido.
Clique em Próxima. O caminho Certificado-Nome é preenchido.
Clique em Próxima.
Clique em Próxima (Você não precisa uma senha).
Clique em Próxima. Aceitar as opções usar como padrão; Selecionar automaticamente o armazenamento de certificados com base no tipo Certificado.
9. Clique em Término.
Consulte Windows Mobile Powered Device Security Model para obter mais detalhes sobre como instalar o SDK certificados para o dispositivo móvel e como usar o Certificado SDK privilegiado para assinar este aplicativo.
Usando o aplicativo
Codificar o desktop-side é um aplicativo do Windows sem uma interface usuário. O projeto cria um executável chamado "ceinvoke.exe". Os resultados são exibidos em uma caixa mensagem simples. Você pode executar o arquivo executável a partir de linha de comando com os parâmetros a seguinte tabela.
Parâmetro de linha de comando | Teste | Resultado |
---|---|---|
Nenhum byte de parâmetro |
Bloco Simples |
Retorna um código de erro |
StoreInfo |
Bloco Simples |
Retorna a armazenar informações na dispositivo móvel |
S1 |
Fluxo Simples |
Retorna texto especificando 1 Modo Fluxo |
S2 |
Vários fluxos |
Retorna uma lista de todos os bancos de dados na dispositivo móvel |
Você também pode executar o executável a partir de Visual Studio por alteração Projeto > As configurações > Depurar > Categoria geral > Argumentos programa.
Comentários
O amostra de código é executado no área de trabalho computador hospedar e não com suporte para a emulação.
Este aplicativo servidor deve executar como Privileged, o que significa ele deve ser assinado com um Certificado de segurança que está na armazenamento de certificados privilegiado na dispositivo móvel. Você deve instalar o SamplePrivDeveloper.pfx Certificado para que fiquem seus projetos DLL e CAB assinado corretamente.
CeInvoke.dll Deve existir na pasta do Windows na dispositivo móvel (isto é, " \windows\ceinvoke.dll"), ou na raiz da hierarquia de pasta dispositivo móvel (isto é, " \ceinvoke.dll").
É a responsabilidade da extensão RAPI para versão o objeto IRAPIStream (isto é, para chamar pIRAPIStream-> Release()).
O Remote Access Security Policy em Windows Mobile é definido como Restrito , por padrão. Esses dispositivos são considerados "bloqueado", que impede que você usar CeRapiInvoke Para invocar dispositivo-lado DLLs — a menos que você tomar adicional etapas para satisfazer a Remote Access Security Policy.
Observação
Embora o dispositivo ainda está bloqueado, CeRapiInvoke é permitido no dispositivo Windows Mobile 6 Classic.
CeRapiInvoke Fornece elevados privilégios para qualquer DLL que pode ser chamado no dispositivo.
Para obter mais informações sobre segurança RAPI, consulte Security for Windows Mobile Powered Devices.
Ambientes de Desenvolvimento
SDK: Windows Mobile 6 Professional SDK e Windows Mobile 6 Standard SDK
Ambiente de desenvolvimento: Visual Studio 2005.
ActiveSync: Versão 4.5.
See Also
Concepts
Code Samples for Windows Mobile
Other Resources
Windows Mobile Powered Device Security Model
RAPI Restricted Mode Security