Обнаружение игровой платформы во время выполнения в XNA - PullRequest
2 голосов
/ 11 апреля 2010

Я работаю над проектом CNA XNA, который требует от меня отображения информации, основанной на платформе, на которой игра.

Есть ли способ определения платформы (XBox, Windows, Zune) во время выполнения?

Ответы [ 4 ]

3 голосов
/ 11 апреля 2010

Environment.OSVersion - это то, что вы хотите. Согласно документу MSDN, вы должны использовать его как:

 OperatingSystem os = Environment.OSVersion;
 PlatformID pid = os.Platform;
 switch (pid) 
 {
   //Do whatever
 }
2 голосов
/ 17 апреля 2010

Лучший способ - проверить флаги препроцессора

#if WINDOWS
// do stuff
#endif

#if XBOX360
// do stuff
#endif

##if ZUNE
// do stuff
##endif
2 голосов
/ 11 апреля 2010

Вы можете использовать Environment.OSVersion для получения информации о Платформе и Версии. Свойство Platform, скорее всего, скажет вам, чего вы хотите, хотя я не знаю наверняка, будет ли возвращенных строк достаточно, чтобы отличить разные платформы. Я был бы удивлен, если бы они этого не сделали.

0 голосов
/ 11 апреля 2010

Возможно, у них есть API, который даст вам версию ОС.

...