Use AutoHotkey to get path from Explorer & replace w/UNC path for sharing

path from explorer

Use AutoHotkey to get Path from explorer and sharefull path with others

Working on multiple computers, in multiple environments, and with teams of people can be a challenge when wanting to share files.

I have quite a few network folders that I’ve “mapped” so they look like drives.  This always causes issues when copying the path and sharing with others.   I also have a “b:” drive that I’ve created which, in reality, is a shortcut to the root of where my DropBox folder is located.

Registry settingsThe 1st thing I’m going to recommend is that you backup your registry!!!     After doing so, navigate to this key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\DOS Devices

 

 

Then right click on the right and create a new String.  This is where you’ll put in the letter of the drive you want (for instance I put in B: ).  After you’ve done that, right click on the B: and  add the path to the folder you want mapped.  Here’s an example  “\??\C:\\Dropbox\test\”  Please note the second \ after the c:\   It is not a typo!   For some weird reason you need two there however everywhere else after you just need one!

The next time you boot up you’ll have the new drive (this isn’t creating any sort of copies of files, it is merely giving you a convenient shortcut to a folder)   Here’s a screenshot of my settings.

Mapping network drives are easy and you can follow this guide here.

Okay, now that we’re done setting up our computer, let’s get to the AutoHotkey script

Copy Path from explorer and replace with UNC (for sharing and to get around security issues)

 
;****************copy path of file selected to clipboard***************************************
#IfWinActive ahk_class CabinetWClass ;Explorer window
^+c:: ;Copy explorer path to clipboard
 clipboard = ; Empty the clipboard
  SendInput, ^c ;changd from Send  11/23
  ClipWait, 1
    If ErrorLevel ;Added errorLevel checking
      {
        MsgBox, No text was sent to clipboard
        Return
      }

clipboard="%clipboard%" ;Path from explorer
;~ MsgBox % A_Username a_tab a_computerName
;*********replace drive letter for full network path* Use UNC path to Network Drive to determine replacement******* 
IfEqual, A_UserName,Joe,StringReplace,Clipboard,Clipboard,B:\,C:\DropBox\ ;Joe
;~ IfEqual, A_UserName,a0225522,StringReplace,Clipboard,Clipboard,E:,\\DFLFS04\email ;Joe
;~ IfEqual, A_UserName,a0601223,StringReplace,Clipboard,Clipboard,E:,\\DFLFS04\email ;Suzy
;~ IfEqual, A_UserName,x0168757,StringReplace,Clipboard,Clipboard,Z:,\\DTHS21\group ;Jenny

Sort, clipboard  ; This also converts to text (full path and name of each file).
Return
#IfWinActive

Here’s a video demonstrating getting the Path from explorer

 

 

 

Comments are closed.