Gere URIs “file: //” no Windows Explorer

2

Eu estou procurando uma maneira de obter um arquivo adequado: / URI de dentro do Windows Explorer. Basicamente eu gostaria de ter uma entrada no menu de contexto que diz "copiar arquivo URI para a área de transferência". Existe algo assim?

Esta não é uma duplicata de "Copiar nome do arquivo para a área de transferência", pois eu quero um URI de arquivo e não o nome do caminho.

Para esclarecer: Eu estou olhando para obter "file: /// c: /Temp/foo%20bar.txt" e nem "C: \ Temp \ foo bar.txt" nem "foo bar.txt" nem " C: \ Temp ".

    
por Robert Klemme 14.06.2011 / 15:54

1 resposta

2

Acabei de apresentar este VBS.

If WScript.arguments.count > 0 Then
    Dim WshShell: Set WshShell = WScript.CreateObject("Wscript.Shell")
    strPath = "file:///" & Wscript.Arguments(0)
    strPath = Replace(strPath,"\","/")
    strPath = Replace(strPath," ","%20")
    sCmd = "%comspec% /c<nul (set/p anyvariable=" & Chr(34) & strPath & Chr(34) & ")|clip.exe"
    WshShell.Run sCmd,0,0
    Set WshShell = Nothing
End If

Salve como um arquivo .VBS. Arraste e solte um arquivo no VBScript e copie o URI do arquivo para a área de transferência. Você pode implementá-lo no menu do botão direito, se necessário.

Copia o nome do arquivo para a memória, inverte as barras, substitui os espaços por "% 20" e acrescenta "file: ///" no início. É um script básico que suporta apenas um nome / argumento de arquivo. Você pode modificá-lo conforme necessário.

Adicione o script à sua pasta Enviar para

Você pode colocar um atalho do script na sua pasta Enviar para. Pressione WinKey + R , digite shell:sendto e pressione ENTER . Crie um atalho para o script na pasta Enviar para e nomeie-o de acordo. (ex. Copy File URI )

Agora, clique com o botão direito do mouse em um arquivo, clique em Enviar para e clique em Copy File URI . O caminho do arquivo seria copiado para a área de transferência, no formato URI, conforme abaixo.

file:///C:/Users/jack/desktop/list-of-items.txt
    
por 12.07.2016 / 17:19