Como faço para estender o tamanho máximo do caminho de arquivo no Windows 7? [duplicado]

16

Alguém sabe se é possível estender o comprimento máximo do caminho no Windows 7 (64 bits)?

    
por Cameron 08.09.2009 / 15:02

3 respostas

21

Infelizmente, a resposta é " depende do programa ". Cabe às pessoas que escrevem os programas determinar qual método eles querem usar. Na verdade, (plugue sem vergonha) eu escrevi uma entrada no blog algumas semanas atrás, descrevendo o problema em Explorer ainda limitado por MAX_PATH .

Dependendo do que você está tentando fazer, você pode usar outro programa para gerenciar os caminhos longos, como o Microsoft Word. Caso contrário, sua única outra opção é apenas "viver com isso", já que tem sido assim para sempre e não parece estar mudando tão cedo.

Pensei também em mencionar que o Windows de 64 bits também usa a API "Win32" e o CreateFileA para programas de 32 e 64 bits tem o problema.

EDIT: Detalhes do Geeky

O problema existe somente na função CreateFileA e na função CreateFileW quando um caminho absoluto com uma letra de unidade é usado. O único método para contorná-lo (no código) é usar a sintaxe \?\C:\Path\To\File.txt ... assim, mesmo os programas que usam CreateFileW com um caminho de C:\Path\To\File.txt têm o problema. É meio difícil de descrever, mas é desnecessário dizer que o maior motivo de programas que não suportam internamente a sintaxe \?\ é que eles perdem a capacidade de usar caminhos relativos (caminhos como ..\Documents\file.doc ).

    
por 08.09.2009 / 15:20
5

O comando SUBST incluído no Windows 7 permitirá o acesso a um caminho mais longo por meio da nova letra da unidade virtual.

Associates a path with a drive letter.

SUBST [drive1: [drive2:]path]

SUBST drive1: /D

drive1: Specifies a virtual drive to which you want to assign a path.

[drive2:]path Specifies a physical drive and path you want to assign to a virtual drive.

/D Deletes a substituted (virtual) drive.

Type SUBST with no parameters to display a list of current virtual drives.

    
por 08.09.2009 / 15:38
2

Use um Ponto de junção para fornecer um caminho mais curto para um caminho mais longo.

    
por 08.09.2009 / 15:44