W sytuacji, gdy masz frontend UI zbudowany przy użyciu nowego stylu Metro aplikacji dla systemu Windows 8 i chciałbyś, aby komunikował się z aplikacją .NET działającą na pulpicie na tym samym komputerze lokalnym (np. Aplikacja usługi Windows).
Jakie formy komunikacji międzyprocesowej są dostępne między aplikacją Metro a aplikacją komputerową?
Podziękowania dla Pavela Minaeva z zespołu Visual Studio, który w komentarzu podał kilka wstępnych informacji:
Według Martyna Lovella nie ma na to celowego mechanizmu, a niektóre, które można by do tego wykorzystać, są celowo ograniczane. Na przykład nie ma nazwanych potoków ani plików mapowanych w pamięci. Istnieją gniazda (w tym gniazda serwera), ale podczas łączenia się z hostem lokalnym można łączyć się tylko z tą samą aplikacją. Możesz użyć zwykłych plików w jednym z udostępnionych „znanych folderów” (Dokumenty, Obrazy itp.), Ale jest to dość prymitywny hack, który wymaga sondowania i jest widoczny dla użytkownika. - komentuje Pavel Minaev w tej sprawie
Tak więc w przypadku niepowodzenia normalnego podejścia myślałem o użyciu usług internetowych lub czytaniu / zapisywaniu w bazie danych w celu uzyskania jakiejś formy komunikacji, z których oba wydają się przesadą, gdy procesy działają na tej samej maszynie.
Czy to, co tu próbuję, ma sens? Widzę potrzebę, aby aplikacja Metro była frontendowym interfejsem użytkownika dla istniejącej usługi działającej na pulpicie. A może lepiej jest po prostu użyć WPF dla interfejsu użytkownika interfejsu użytkownika działającego na pulpicie (tj. Aplikacji innej niż metro).