Ir para conteúdo


Foto
- - - - -

Listar arquivos com endereço muito longo.


  • Por favor, faça o login para responder
10 respostas neste tópico

#1 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 11 outubro 2012 - 11:43

Este exemplo tem o objetivo de listar todos arquivos que tiverem o caminho muito extenso pois o windows só aceita 255 caractéres após este número problemas são gerados tipo não conseguir deletar o arquivo ou a pasta onde ele está, o script vai gerar uma lista de todos arquivos que excederem este limite e para resolver basta diminuir o nome das pastas onde ele está ou o nome dele mesmo até que o caminho fique com menos de 255 caract´res.

Por favor Login ou se não possuir um conta Registre-se para ver o conteúdo escondido


Editado por Belini, 29 agosto 2013 - 12:12 .


#2 joelson0007

joelson0007

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 895 posts
  • LocationGuarapuava - PR

Postado 11 outubro 2012 - 11:48

gostei da maneira que fez, só fiquei com uma dúvida.

quanto o FileGetShortName e o FileGetLongName tem algo haver com o seu script ou não?

tipo pegar todos arquivos usando FileGetShortName e para mostrar mensagens na tela usar o FileGetLongName e para fazer alguma ação com o arquivo usar a variavel do FileGetShortName

#3 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 11 outubro 2012 - 12:09

@joelson007 não testei estes comandos mais para ter o resultado que quero acho que devo usar sem eles mesmo pois a Stringlen retorna o número que for encontrado na procura, dei uma melhorada no script que agora tem uma Gui onde pode escolher o caminho e o númro limite para listar.

#4 joelson0007

joelson0007

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 895 posts
  • LocationGuarapuava - PR

Postado 11 outubro 2012 - 12:14

tudo certo então :up:

seu script vai ajudar bastante, sempre buga com nomes longos no windows mesmo, até mais.

#5 Joel Parnoff

Joel Parnoff

    Novato

  • Membros
  • 1 posts
  • LocationCuritiba

Postado 29 agosto 2013 - 10:58

Olá gostaria de saber como faço para rodar este script sou novo aqui.



#6 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 29 agosto 2013 - 11:34

Olá gostaria de saber como faço para rodar este script sou novo aqui.

Olá, seja bem vindo ao fórum!

Que tal dar um passeio no fórum e ver os tópicos em destaque?
Em especial:

Por favor Login ou se não possuir um conta Registre-se para ver o conteúdo escondido


Por favor Login ou se não possuir um conta Registre-se para ver o conteúdo escondido



Em minha assinatura você irá encontrar mais links úteis,

JS

#7 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 29 agosto 2013 - 12:15

@Joel Parnoff seja bem vindo ao forum, não sei porquê razão o código que postei ficou cheio de caracteres estranhos mais já fiz a correção no primeiro post e prá usar basta compilar, executar e indicar a pasta ou unidade onde serão listados os arquivos com nome muito longo.



#8 gnascjr

gnascjr

    Novato

  • Membros
  • 1 posts
  • Locationosasco

Postado 02 setembro 2016 - 05:05

como executo este script? obrigado



#9 Manimal

Manimal

    Membro Nível 3

  • Administradores (Adm)
  • PipPipPipPip
  • 358 posts
  • LocationVideira/SC

Postado 03 setembro 2016 - 10:31

@Belini: Muito bom! Sempre ajuda ;)

 

@Joelson0007: Os comandos que vc citou são para pegar os nomes dos aquivos em formato DOS ou reconvertê-los para o formato Windows.

 

A partir do Windows 95, uma das grandes reclamações dos usuários foi ouvida e resolvida com a adoção dos Nomes Longos (até 255 caracteres), pois até então as versões de DOS e Windows só trabalhavam com o formato 8/3:

 

  • 8 caracteres para o nome do arquivo
  • 3 caracteres para a extensão

 

Por questões de compatibilidade, até hoje esses padrões são mantidos. Até a versão XP, o núcleo do Windows ainda era em DOS e a confusão dos Nomes Longos aumentou.

Somente a partir do Windows 7 e a adoção do novo padrão foi possível resolver este problema.

 

Mesmo assim, ainda é muito comum encontrarmos vários nomes "curtos" como PROGRA~1, ou DOCUME~2, que são a versão "DOS" dos nomes longos, pois não "poderia" existir nomes com mais de 8 caracteres, porque ainda temos muitos programas que usam LIB's e DLL's mais antigas.

 

As funções que vc descreveu, que convertem de um formato para outro, tem a seguinte finalidade:

Por favor Login ou se não possuir um conta Registre-se para ver o conteúdo escondido

Tudo pela compatibilidade!

 

Apesar do tamanho dos nomes não ser mais problema, a ambiguidade da M$ e a "liberdade" dos programadores, criou um 2o problema:

 

O limite de 255 é para o nome do arquivo ou para todo o caminho dele?

 

Porque teoricamente quando falamos em nome de arquivo, este é composto de 4 partes (e toda a documentação da M$ fala nisso):

 

Origem: Drive ou recurso de rede = C:, D:, \\MICRO\H

Pasta: Diretório completo até o arquivo = \Pasta\Subpasta\Outra\

Nome: Arquivo

Extensão: txt

 

Juntando estas 4 partes teremos a identificação completa e inequívoca do arquivo = D:\Pasta\Subpasta\Outra\Arquivo.txt

 

Então, seguindo por esta premissa, o nome COMPLETO não poderia passar de 255 caracteres, incluindo aqui a pasta e o nome do arquivo, porém o que aconteceu é que o limite aplicado de 255 caracteres foi aplicado somente na 3a parte (NOME), daí a confusão.

 

Se pensarmos que cada pasta (e subpasta) também pode ter 255 caracteres cada uma, o limite de 255 TOTAL foi pro beleléu faz muito tempo.

 

Por isso que temos vários nomes que não podem ser deletados ou renomeados e alguns programas reclamam disso e outros não!



#10 Edineia

Edineia

    Novato

  • Membros
  • 1 posts
  • LocationFranca - SP

Postado 09 junho 2017 - 03:18

Após muita pesquisa no google, encontrei este site e resolvi meu problema com arquivos/caminhos muito longos. Obrigada pela postagem! Estou estudando a linguagem e aprendendo bastante, espero logo poder contribuir com o fórum. Valeu!



#11 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 09 junho 2017 - 09:26

@Edineia seja bem vinda ao forum e fico feliz em ter ajudado!






0 usuário(s) está(ão) lendo este tópico

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

Documentação OnLine de referência