MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Função Dir (Inconssitente)

    Compartilhe

    DaviSilva
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 25
    Registrado : 26/09/2013

    [Resolvido]Função Dir (Inconssitente)

    Mensagem  DaviSilva em Dom 11 Set 2016, 21:49

    Fala galera do forum. Ja dei algumas pesquisadas e não axei nada relacionado a função dir, então estou postando.

    Sempre usei a função Dir(pathname, attributes) para verificar se existem arquivos ou pastas em meus códigos.
    Esses dias fui usar novamente da seguinte forma.

    Dim caminhoMWS As String

    caminhoMWS = "C:\Program Files (x86)\Magic Workstation"

    If Dir(caminhoMWS, vbDirectory) = "" Then

    MsgBox "Instale primeiro a versão 2.2 do Magic Workstation. Depois tente novamente", vbCritical, "Algo deu errado"

    End If

    Só que fui fazer o teste, e deletei a dita pasta... e pra minha surpresa, o resultado ainda continua sendo o nome da pasta.
    Fiz alguns testes em outras pastas e o resultado é que somente esta pasta e outra com o nome "Magic Set Editor 2", retorna o nome da pasta mesmo
    sem elas estarem presentes no PC.

    Alguém saberia explicar?
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4292
    Registrado : 15/03/2013

    Re: [Resolvido]Função Dir (Inconssitente)

    Mensagem  ahteixeira em Dom 11 Set 2016, 22:56

    Olá, teste assim:

    Código:
    Dim caminhoMWS As String

    caminhoMWS = "C:\Program Files (x86)\Magic Workstation"

    If Len(Dir(caminhoMWS, vbDirectory)) = 0 Then
        MsgBox "Instale primeiro a versão 2.2 do Magic Workstation. Depois tente novamente", vbCritical, "Algo deu errado"
    End If

    Abraço

    DaviSilva
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 25
    Registrado : 26/09/2013

    Re: Função Dir (Inconssitente)

    Mensagem  DaviSilva em Seg 12 Set 2016, 04:28

    ahteixeira, já tentei dessa maneira e também coloquei a função em uma msgbox pra ver o que ela me retornava, pra tentar entender o processo.
    dessa maneira:

       MsgBox Dir(caminhoMWS, vbDirectory)

    Mas ela me retorna o nome da pasta. mesmo ela não existindo dentro de (Program Files).
    Em qualquer outra pasta, que não exista, a msgbox retorna "".

    Então se eu mandar contar os caracteres, vai ser diferente de 0.

    Não sei se estou falando besteiras, mas talvez tenha a ver com o fato do nome da pasta quando visualizamos no explorer seja "Arquivos de programas (x86)" e quando no código indicarmos ela com o nome em PTBR, o access não encontra. Mas se indicarmos como "Program Files (x86)" ele encontra.
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4292
    Registrado : 15/03/2013

    Re: [Resolvido]Função Dir (Inconssitente)

    Mensagem  ahteixeira em Seg 12 Set 2016, 11:51

    Olá Davi Silva,
    Acho que com o código que apresentou, pretende verificar se a pasta existe ou não.
    Com o código que postei, deveria funcionar, ou seja quando a pasta não existe a função vai retornar que o tamamnho é 0 (zero)

    Veja um teste com a pasta C:\Windowss e C:\Windows  :
    [Você precisa estar registrado e conectado para ver esta imagem.]
    Abraço

    DaviSilva
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 25
    Registrado : 26/09/2013

    Re: Função Dir (Inconssitente)

    Mensagem  DaviSilva em Seg 12 Set 2016, 16:29

    Sim, isso mesmo. A sua função eu ja utilizo na empresa para outras verificações na rede e funciona muito bem...

    Fiz mais alguns testes, só que agora na empresa, e quando a pasta não existem, as duas funções estão funcionando corretamente, então cheguei a conclusão de que tem algo de errado com meu computador, ou a instalação do programa que quero verificar se esta lá ou não.

    Muito obrigado pela ajuda.
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4292
    Registrado : 15/03/2013

    Re: [Resolvido]Função Dir (Inconssitente)

    Mensagem  ahteixeira em Seg 12 Set 2016, 16:54

    Olá, obrigado pelo retorno.
    Terá que verificar em casa, o S.O. pode variar a pasta de instalação.
    Acho que o tópico abaixo pode ajudar:
    [Você precisa estar registrado e conectado para ver este link.]
    Abraço

      Data/hora atual: Seg 21 Ago 2017, 18:54