MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

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 : 21
    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?

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3206
    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 : 21
    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.

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3206
    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 : 21
    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.

    ahteixeira
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3206
    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: Dom 04 Dez 2016, 01:56