Starthere: #SingleInstance ;Gui, +AlwaysOnTop Gui, Margin, 5,5 Gui, Font, s8 Bold, Verdana Gui, Add, GroupBox, xm w450 r3, Target Folder Gui, Add, Button, xp+10 yp+15 gtargetfolder section , Select a Folder Gui, Add, Checkbox, x+25 ys+6 vsubstatus checked1, Include all subfolders with ext Gui, Add, Combobox, x+5 ys w70 vextchoice, *.*||*.mp3|*.pdf|*.exe|*.doc|*.jpg Gui, Add, Edit, xs w430 vtargetchoice, Gui, Add, GroupBox, xm w450 r4, Destination Folder Gui, Add, Button, xp+10 yp+15 gdestinationfolder section, Select a Folder Gui, Add, Edit, xs w430 vdestchoice, %A_ScriptDIR% ;defaults to the script directory Gui, Add, GroupBox, xm w450 r2, Actions Gui, Add, Button, xp+10 yp+15 w220 gmakeshortcuts section,&Make All Shortcuts Gui, Add, Button, x+5 gdeleteshortcuts , &Delete Shortcuts Gui, Add, Button, x+5 gGuiclose , &Quit && Exit Gui, Add, GroupBox, xm w450 r3, Commands Gui, Add, Text, xp+10 yp+15 r4 w430 CENTER Section vlog ReadOnly, Drag && Drop files right here onto the GUI`nThis will to Auto create shortcuts to the destination folder. `n`nF11=Show F12=Hide ESC=Quit Gui, Add, Statusbar,, Gui, Show, , Shortcut Maker v1c Return targetfolder: fileselectfolder, targetselect ;select a target folder GuiControl, , targetchoice,%targetselect% ;update GUI display return destinationfolder: fileselectfolder, destinationselect ;select a destination Folder GuiControl, , destchoice,%destinationselect% ;update GUI display return makeshortcuts: gui,submit,nohide ;get values from GUI and dont hide the GUI if targetchoice = ;error check that targetchoice has a value { msgbox, No Target Folder selected return } Loop,%targetchoice%\%extchoice%,0,%substatus% ;loop target folder with ext *.* substatus is to include subfolders { StringReplace, FullPath, A_LoopFileDir, :, , All ;remove the : from the filepath filecreatedir, %destchoice%\%Fullpath% ;create folders FileCreateShortcut, %A_LoopFileLongPath%,%destchoice%\%Fullpath%\%A_Loopfilename%.lnk,%A_LoopFileDir% ;create a shortcut in the same folder stucture SB_SetText( A_Index " Shortcuts added to " destchoice ) ;update the Statusbar } return deleteshortcuts: gui, submit, nohide ;get values from GUI and dont hide the GUI if destchoice = { msgbox, No Destination Folder selected return } MsgBox, 20, , Are you really sure about this.`n`nThis will delete ALL shortcuts in ALL subfolders of`n%destchoice%\`n`nIt will leave the folders in place`n`n(Press YES or NO) IfMsgBox No return Loop,%destchoice%\*.lnk,0,1 ;loop the destination folder with *.lnk extensions { Filedelete,%A_LoopFileDir%\*.lnk ;delete all files with lnk extension } SB_SetText( " All Shortcuts deleted " ) ;update the status bar return GuiEscape: ExitApp Return GuiClose: ExitApp Return f11:: ;shortcut key to show gui, destroy goto, starthere return F12:: ;shortcut key to hide Gui, Destroy return GuiDropFiles: ;perform this if files dropped onto GUI Gui,submit,nohide ;get values from GUI and dont hide the GUI Loop, parse, A_GuiControlEvent, `n ;loop through if multiple files dropped onto GUI { SplitPath, A_LoopField, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive ;split the file path into seperate pieces StringReplace, FullPath, OutDir, :, , All ;remove the : from the filepath filecreatedir, %destchoice%\%Fullpath% ;create folders FileCreateShortcut, %A_LoopField%,%destchoice%\%fullpath%\%OutFileName%.lnk,%OutDir% ;create a shortcut in the same folder stucture SB_SetText( A_Index " Shortcuts added to " destchoice ) ;update the Statusbar } Return