• Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   13-02-2016

      Prezados membros do Clube do Hardware,

      Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:
        Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas ao formulário abaixo:    Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
Seguidores 0
andreaxl

Ajuda em ASP

5 posts neste tópico

Pessoal, to precisando disso urgente. Preciso de uma função em ASP para pegar o sistema operacional do cliente q está acessando a página. Existe como eu usar o Request.ServerVariables("HTTP_USER_AGENT"), mas este retorna uma string com vários parâmetros e todos despadronizados além de retornar os sistemas operacionais assim: windows 5.1, windows 5.0. Alguém conhece alguma função que resolva meu problema?

Muito obrigado.

André Aguiar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, acho que a única variável que retorna s.o. na coleção "ServerVariables" é essa mesmo.

Tente algo assim:

Function RetornarOS(OS)

   

    Dim PosicaoInicial, PosicaoFinal

   

    PosicaoInicial = InStr(1, OS, "Windows", 1)

       

    If Not PosicaoInicial = 0 Then

       

        PosicaoFinal = InStr(PosicaoInicial, OS, ";", 1)

       

        If PosicaoFinal = 0 Then

            PosicaoFinal = InStr(PosicaoInicial, OS, ")", 1)

        End If

       

        RetornarOS = Mid(OS, PosicaoInicial, (PosicaoFinal - PosicaoInicial))

   

    Else

       

        RetornarOS = "[falha ao identificar Sistema Operacional]"

       

    End If

   

    Select Case RetornarOS

    Case "Windows NT 5.0"

        RetornarOS = "Microsoft Windows 2000"

    Case "Windows NT 5.1"

        RetornarOS = "Microsoft Windows XP"

    Case "Windows NT 4.0"

        RetornarOS = "Microsoft Windows NT"

    Case Else

        RetornarOS = "Microsoft Windows 95, 98"

    End Select

   

End Function

Response.Write "Sistema Operacional: " & RetornarOS(Request.ServerVariables("HTTP_USER_AGENT"))

%>

Obs.: na estrutura "Select Case" eu acho melhor você verificar se os nomes dos s.o. coincidem com as versões que eu coloquei, pois eu só fiz assim para exemplo. Mas eu acho que os dois primeiros estão certos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oh Clemente, brigadão... acho q a solução já está começando a ficar pronta.. gostaria de saber agora se existe mesmo uma padronização para estes sistemas operacionais.. exemplo: se cliente rodando windows 2000 acessar a página irá retorna sempre windows 5.0 ou tem mais algum, tipo windows 5.0.1. Isto é um exemplo, se alguém souber e puder me ajudar com essa padronização.

Obrigado.

André Aguiar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

se cliente rodando windows 2000 acessar a página irá retorna sempre windows 5.0 ou tem mais algum, tipo windows 5.0.1.

Os navegadores respeitam a regra de "padronização" e sempre enviam o nome correto do sistema. O Windows 2000 é realmente o Windows NT 5.0 -- "2000" foi apenas um golpe de marketing da Microsoft (que ficou sabendo que a maioria das pessoas não gostava do nome "NT" pois parecia ser velho).

Acontece que hoje em dia o uso de firewalls e filtros acaba mudando o user-agent. Vários firewalls modificam o user-agent para Netscape4 (Mozilla 4.0 Compatible) para adicionar mais "privacidade". Portanto, em alguns casos, os dados enviados pelo navegador serão modificados antes de enviados -- não pelo navegador, mas por sistemas de segurança e privacidade, logo fazendo com que a função que detecta o OS não funcione perfeitamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

FallenHawk, muito obrigado pela resposta. Realmente sei que vai ser difícil fazer o que eu quero, que são as estatisticas de visita de um site (sei q existem aplicações prontas para isso, mas a empresa em q trabalho está vendendo uma aplicação deste tipo, ai já viu né). De qualquer forma, se alguem souber de uma aplicação que roda assim de maneira legal e q já tenha as funções já prontas vou agradecer demais.

Obrigado.

André Aguiar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!


Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.


Entrar agora
Entre para seguir isso  
Seguidores 0