Fórum Detectar versão do Windows #3981

25/03/2009

0

Bom dia...      Estou com o seguinte problema, estou precisando detectar qual versão do windows esta rodando o sistema, por exemplo, na ocasião eu quero saber se é Windows Mobile versão XXX ou se é Windows CE ou se é Windows XP...    Estou precisando desta solução mesmo...   Att, Vinicius Climaco.
Vinicius Climaco

Vinicius Climaco

Responder

Posts

25/03/2009

[devmedia .net]

Opa, blz Vinicius !?   Seguinte, Você consegue detectar a plataforma (WinNT,Win32,Mac) ; a versão que eu saiba não. Assim você consegue saber se é Mobile.   Segue um exemplo Quando é instalado, o MSI adiciona ".NET CLR" o número de versão para a UserAgent e Cadeia de Caracteres. O exemplo a seguir mostra um script embutido numa página HTML simples. O script procura a seqüência de caracteres UserAgent para determinar se é instalado e exibe os resultados da Pesquisar um mensagem de status. < HTML > < Cabeçalho > Teste para o .NET Framework 3.0 < título > < / TITLE > < meta http-equiv = " Conteúdo-tipo " Content = " Texto/html; charset = utf-8 " / &Gt; < script Idioma = "JavaScript" > <!--dotNETRuntimeVersão var = "3.0.04425.00";
   
    Função Janela::OnCarregar() {se (HasRuntimeVersion(dotNETRuntimeVersion)) {result.innerText = " esta Computador possui a versão correta do .NET Framework 3.0: " + dotNETRuntimeVersion} else {result.innerText = "esta máquina não tem a versão correta do .NET Framework 3.0."  += result.innerText " seqüência userAgent \n\nThis da máquina é: " + navigator.userAgent + ". "; }
   
    / / / / Recuperar a versão de a seqüência agente do usuário e / / comparar com a versão especificada. / / Função HasRuntimeVersion(versionToMarcar) {var userAgentString = navigator.userAgent.MATCH(/.NET CLR [0-9.]+/g);

      Se (userAgentString! = null) {var i;

        de (i = 0; i < userAgentString.Comprimento; ++ i) {se (CompareVersions(GetVersion(versionToCheck), GetVersion(userAgentString[i])) < = 0) retornar Verdadeiro; } }

      retornar falso; }

    / / / / Extrair a parte numérica da seqüência de caracteres da versão. / / Função GetVersion(versionString) {var numericString = versionString.MATCH(/([0-9]+)\.([0-9]+)\.([0-9]+)/i); Retornar numericString.slice(1); }

    / / / / Comparar as Cadeia de caracteres de versão 2 convertendo-os em Formatarar numérico. / / Função CompareVersions (version1, version2) {de (i = 0; i < version1.length; ++ i) {var núm1 = novo Número(version1[i]); var núm2 = novo Number(version2[i]);

        Se (núm1 < Núm2) retorna-1;

        Se (núm1 > Núm2) retorna 1; }

      retornar 0; }
   
    -&Gt; < / SCRIPT > < / HEAD >
 
  < Mensagem > < DIV ID = "resultado" / &Gt; < / BODY > < / MTML >
Se a busca pela versão ".NET CLR" for bem sucedida, o seguinte tipo de mensagem de status aparece: Esta máquina possui a versão correta do .NET Framework 3.0: 3.0.04425.00 Esta máquina do userAgent seqüência é: Mozilla/4.0 (compatível; MSIE 7.0; Windows NT 5.1; NET CLR 1.1.4322; InfoCaminho.1; NET CLR 2.0.50727; NET CLR 3.0.04425.00). Caso contrário, o seguinte tipo de mensagem de status aparece: Esta máquina não tem versão correta do .NET Framework 3.0. Esta máquina do userAgent seqüência é: Mozilla/4.0 (compatível; MSIE 7.0; Windows NT 5.1; NET CLR 1.1.4322; InfoPath.1; NET CLR 2.0.50727). Abraços   Carlos Jr
Responder

Gostei + 0

25/03/2009

Vinicius Climaco

Mas no meu caso eu não posso usar javascript, é uma aplicação Form, para Mobile, CE e XP. Como seria para detectar nessa tecnologia ?
Responder

Gostei + 0

25/03/2009

[devmedia .net]

Opa, você fará da seguinte maneira...   Coloque o código no evento do seu botão ou na inicialização de algum método.. onde você desejar   System.OperatingSystem os = System.Environment.OSVersion; string plataforma = os.Platform.ToString(); string versao = os.VersionString.ToString(); Só isso, já vai lhe dar a versão do Windows
Responder

Gostei + 0

26/03/2009

[devmedia .net]

Olá, tudo bem ? Aguardo seu contato para continuidade do chamado ou fechamento do mesmo.   Abraços   Carlos Jr
Responder

Gostei + 0

26/03/2009

Vinicius Climaco

ta tranquilo... pode fechar...
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar