Como um aplicativo Metro no Windows 8 pode se comunicar com um aplicativo de desktop back-end na mesma máquina?

Em uma situação em que você constrói o front-end da interface do usuário usando o novo estilo Metro de aplicativos para Windows 8 e gostaria de se comunicar com um aplicativo .NET em execução na área de trabalho na mesma máquina local (por exemplo, um aplicativo de serviço do Windows).

Quais formas de comunicação entre processos estão disponíveis entre o aplicativo metro e o aplicativo de desktop?

Obrigado a Pavel Minaev, da equipe do Visual Studio, que forneceu algumas informações iniciais aqui em um comentário, citando:

De acordo com Martyn Lovell, não existe nenhum mecanismo deliberado para isso, e alguns que poderiam ser usados para isso são intencionalmente restritos. Os pipes nomeados não estão lá, por exemplo, nem os arquivos mapeados na memória. Existem soquetes (incluindo soquetes de servidor), mas ao conectar-se ao host local, você pode conectar-se apenas ao mesmo aplicativo. Você pode usar arquivos normais em uma das "pastas conhecidas" compartilhadas (documentos, imagens, etc.), mas esse é um hack razoavelmente grosseiro que requer pesquisa e fica visível para o usuário. -Pavel Minaev comentando emesse problem

Para falhar nas abordagens normais, eu estava pensando em usar serviços da Web ou ler / gravar em um banco de dados para obter alguma forma de comunicação, que parece um exagero quando os processos estão sendo executados na mesma máquin

É o que estou tentando aqui fazendo sentido? Percebo a necessidade de um aplicativo de metrô ser a interface do usuário de front-end de um serviço existente em execução na área de trabalho. Ou é melhor usar apenas o WPF para a interface do usuário front-end em execução na área de trabalho (por exemplo, um aplicativo não metropolitano).

questionAnswers(8)

yourAnswerToTheQuestion