Windows 8 için yeni Metro tarzı uygulamalar kullanılarak oluşturulmuş kullanıcı arabirimine sahip olduğunuz ve aynı yerel makinede (örneğin bir Windows hizmeti uygulaması) masaüstünde çalışan bir .NET uygulamasıyla iletişim kurmasını istediğiniz bir durumda.
Metro uygulaması ile masaüstü uygulaması arasında süreçler arası iletişimin hangi biçimleri mevcuttur?
Buraya bir yorumda bazı ilk bilgiler veren Visual Studio ekibinden Pavel Minaev'e teşekkürler:
Martyn Lovell'e göre, bunun için kasıtlı bir mekanizma yok ve bunun için kullanılabilecek bazıları kasıtlı olarak kısıtlanıyor. Örneğin, adlandırılmış kanallar yoktur, bellek eşlemeli dosyalar da yoktur. Soketler var (sunucu soketleri dahil), ancak localhost'a bağlanırken sadece aynı uygulamaya bağlanabilirsiniz. Normal dosyaları, paylaşılan "bilinen klasörlerden" (Belgeler, Resimler vb.) Birinde kullanabilirsiniz, ancak bu, sorgulama gerektiren ve kullanıcı tarafından görülebilen oldukça kaba bir hack'tir. - Pavel Minaev bu konu hakkında yorum yapıyor
Bu nedenle, başarısız normal yaklaşımlar, bir tür iletişimin gerçekleşmesini sağlamak için web hizmetlerini kullanmayı veya bir veritabanına okuma / yazmayı düşünüyordum, her ikisi de süreçler aynı makinede çalıştığı zaman aşırılık gibi görünüyor.
Burada yapmaya çalıştığım şey mantıklı mı? Masaüstünde çalışan mevcut bir hizmet için bir metro uygulamasının ön uç kullanıcı arayüzü olması gerektiğini görebiliyorum. Veya masaüstünde çalışan ön uç kullanıcı arabirimi için yalnızca WPF kullanmak daha mı iyidir (yani metro olmayan bir uygulama).