Posso usar uma barra na caixa de diálogo Abrir arquivo do Windows?

4

Na caixa de diálogo padrão de arquivos abertos do Windows (a caixa de diálogo que exibe a entrada de menu "Arquivo & Código; Abrir" no Bloco de Notas, por exemplo), gostaria de poder digitar um caminho contendo barras / . Mas apenas barras invertidas são aceitas (eu tentei no Windows XP e no Windows 7). Eu posso abrir c:\autoexec.bat , mas se eu tentar abrir /autoexec.bat ou c:/autoexec.bat , recebo a mensagem de erro

c:/autoexec.bat
The file name is not valid.

O Windows aceita barras como separador de caminho em alguns contextos , mas infelizmente não na caixa de diálogo abrir arquivo, pelo menos por padrão.

Existe uma configuração mágica de registro, um programa complementar ou outro método razoável que me permita usar barras strongs na caixa de diálogo de abertura de arquivos do Windows? Estou especialmente interessado no Office 2007 em execução no Windows 7, mas prefiro uma solução que se aplique a todos os aplicativos que usam o diálogo padrão no XP e no 7.

“Não use o Windows” não é uma opção.

    
por Gilles 25.06.2012 / 12:25

1 resposta

4

Eu tenho medo que a resposta seja não : a caixa de diálogo que você vê é da API padrão do Windows, e a maioria dos programas a usará. Ao programá-lo, há algumas opções que podem ser ativadas / desativadas e a que está causando o problema é OFN_FILEMUSTEXIST no OPENFILENAME . Não consegui encontrar nada que documentasse exatamente como é a verificação, muito menos uma maneira de modificar como isso acontece.

A única solução que vejo no lado do Windows é corrigir a dll que contém a função e fazer outra verificação permitindo barras, mas isso requer uma grande quantidade de habilidade.

Por outro lado, as coisas podem ser consertadas, se você for um programador de algum tipo: o mais rápido que eu posso pensar (além de modificar a fonte das strings) é criar um pequeno programa de linha de comando que usa a entrada atual da área de transferência. , converte frente para barras invertidas e coloca o resultado na área de transferência novamente. Coloque-o em um arquivo de lote, atribua um atalho para ele e pronto. Seu fluxo de trabalho seria: caminho da cópia, atalho, pressione Ctrl-V na caixa de diálogo, isso é apenas uma etapa extra simples. Acho que a maioria das linguagens de script pode obter o conteúdo da área de transferência no Windows, e todas elas podem regexar, portanto, são apenas algumas linhas de código.

    
por 25.06.2012 / 13:57

Tags