2009-09-10 27 views
8

Tengo una aplicación Silverlight3 que debe ejecutarse en entornos Windows y Mac OS. Me gustaría saber en tiempo de ejecución si mi aplicación se ejecuta en Windows o Mac, así que puedo ajustar algunas cosas a la manera en que los usuarios están acostumbrados en su sistema operativo de su elección.¿Cómo detectar el sistema operativo de una aplicación Silverlight?

Por ejemplo, en Windows es la norma utilizar los botones "Aceptar" "Cancelar", mientras que en Mac OS la norma es "Cancelar" los botones "Aceptar" (orden inverso).

¿Alguna idea?

Respuesta

13

Hay dos formas.

De Silverlight:

string os = Environment.OSVersion.Platform.ToString(); 
string version = Environment.OSVersion.Version.ToString(); 

De ASP.NET y enviarlo a Silverlight:

StringBuilder sb = new StringBuilder(); 
sb.AppendFormat("UserAgent={0}", Request.UserAgent); 
Xaml1.InitParameters = sb.ToString(); 
+2

Hmm .. en 64 bits Win7 de 64 bits corriendo IE Silverlight 5 y todavía dice Win32NT. – felickz

-1

No estoy familiarizado con Silverlight, pero apuesto a que puede obtener User-Agent encabezado HTTP, que incluye el nombre del sistema operativo.

Cuestiones relacionadas