328

We are having trouble adding our batch scripts to the Windows 7, 8 or 10 taskbar or start menu.

Our batchfiles take some arguments and just execute other application based on those arguments . To keep it simple, we created some shortcuts for our customers which they just need to click in order to get everything running.

The question here is: How can we pin those shortcuts or batch files to the taskbar or start menu?

(The customers aren't supposed to access the file system and that's why they can only see the taskbar)

7 Answers 7

453
  1. Create a shortcut to your batch file.
  2. Get into shortcut property and change target to something like: cmd.exe /C "path-to-your-batch".
  3. Simply drag your new shortcut to the taskbar. It should now be pinnable.
15
  • 7
    Such a simple solution. Strange that pinning of direct shortcuts to batch files is not supported. Commented Feb 7, 2011 at 8:16
  • 23
    And if your annoyed that a cmd window pops up every time you use the shortcut, after pinning, you can open the shortcut at C:\Users\<User name>\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar and change the target path back to path-to-your-batch
    – apple16
    Commented Nov 1, 2012 at 22:53
  • 12
    The names and icons stick after you pin the item, so it is good to also perform step 2.5: Change the name and icon of the shortcut.
    – JohnEye
    Commented Apr 5, 2013 at 13:49
  • 1
    Although this 'seems' to work but the behavior isn't quite the same. 'Standard' pinned program will be active (selected) once it is clicked so when you click it again later it will bring the program to the front. But with pinned shortcuts, it will start a new process/window every time you click it. So it is not quite the expected behavior.
    – Rosdi
    Commented Mar 3, 2015 at 4:13
  • 1
    What does /C in cmd.exe /C "path-to-your-batch" exactly mean? Commented Apr 7, 2015 at 12:36
64

This thread nearly answers my problem, another thread worth reading that solves these issues in a different way is here:Adding Batch Files to Windows 7 Taskbar like the Vista/XP Quick Launch

I was able to add a batchfile to the taskbar by the following steps:

  1. Renaming your .cmd/.bat to to .exe
  2. Right clicking on the *.exe and choose pin to taskbar
  3. Renaming it back to .cmd/.bat
  4. Shift+right clicking the taskbar icon (for the exe) and choose properties
  5. Changing the reference from *.exe to .cmd/.bat and change icon as needed

It starts working right away but the icon refresh needs a reboot.

I have an additional question though: how do you get a pinned taskbar batch file accepting another file as a parameter? It works when pinned onto the startbar, or just in the folder, but I can't get it working like it did on XP.

This is the functionality I'm talking about:

Drag and drop a file on the bat icon. The bat will receive the file name of the dropped file as %1 and vbscript will receive it as WScript.Arguments(0).

8
  • 6
    +1 No need to have a separate shortcut to the batch. And you don't actually need to reboot, you can just kill off explorer.exe and re-run it from task manager for the icon to refresh.
    – stylez
    Commented Sep 29, 2012 at 16:53
  • 2
    I'd be happy if i weren't crying about why this is appearantly still necessary. Thanks, @daniel. appearantly this is still true for win8/10 Commented Mar 2, 2016 at 10:23
  • 1
    this works in Win10 as well :)!
    – J-Dizzle
    Commented Aug 23, 2016 at 22:53
  • Dang, doesn't work for me. Everything did except for when I shift right-click; there's no Properties for the shortcut (I looked under the "More" menu too). Right-click (without shift) is the same. Dangit. Without that last step it's still pointing to the .exe. file.
    – clamum
    Commented Feb 19, 2018 at 21:08
  • 2
    @clamum If you click on "Open File Location" under the "More" menu it'll take you to where the shortcut is. Then you can right-click on the shortcut file to change the target (H/T to the answer by @iuliu.net)
    – Jeff B
    Commented Oct 1, 2018 at 16:31
17

The folder for the Windows 7 taskbar is located at:

C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar

The Start Menu folder is:

C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu

You can create a shortcut there and upon logging off and back on, it should appear.

Hope this helps.... There are other things I should caution you about, for example, they can right click and edit the batch file - so, you may want to look at NTFS permissions for locking down the file.

3
  • 4
    This approach didn't work with shortcuts..
    – Shaharyar
    Commented Jan 25, 2010 at 12:36
  • 2
    Also tried adding a new shortcut here, and it did not show up in the taskbar after restarting explorer.exe.
    – eidylon
    Commented May 24, 2010 at 14:38
  • I used @daniel's solution to add the shortcut and yours to change the icons. Did require an explorer restart to see the new icons. Commented Jul 30, 2018 at 9:49
5

I will add another useful method.. In Windows 10, do you want to have simpler Taskbar, where you can pin things easily (small icons) like this?:

enter image description here

so you will see only those programs that are opened.

In "Documents", create a folder, named "my icons", and put there desired shortcuts. Then right click on taskbar -->"New toolbar":

enter image description here

and select your folder. Then unlock taskbar, right click on the new toolbar, and uncheck "Show Title" and "Show Text":

enter image description here

p.s. dont forget to uncheck "NEVER COMBINE ICONS" in taskbar properties:

enter image description here

1
  • Works on Windows 8.1 as well
    – rxantos
    Commented Jan 14, 2018 at 4:21
3

Yes this is an annoying "feature" of the windows 7 taskbar. I built a simple application that runs batch files which you can pin to your taskbar and pin batch files to it. It gets the job done. Download it for free -> http://johnastevens.com/helpTopics.aspx#batchapp

3
  • 1
    Works like a charm. The only thing missing is that when you just click RunBatch it does nothing, it would be nice if it opens the command prompt.
    – Jochen
    Commented Jan 5, 2011 at 14:35
  • 1
    Thanks for taking the effort to write and make this available but it seems a bit of an over the top approach when the solution given by Kamil Klimek is so simple. Commented Feb 7, 2011 at 8:15
  • The link now leads to a domain parking page.
    – devtk
    Commented Mar 28, 2018 at 14:20
3

In my case, none of these solutions got it to 100%. They were close, but on the latest windows 10 these are the steps that I had to follow:

1. Rename .bat to .exe
2. Right click .exe => Pin To Start
3. Right click .exe => Rename to .bat
4. Right click taskbar/start menu item => More => Open File Location
5. Right click the shortcut => Change target from .exe to .bat

Done!

1
  • This does not work for me, I'm getting a This app can't run on your PC message. Windows 10 V1703 Build15063.332
    – Jay Wick
    Commented May 30, 2017 at 6:01
0

This only works for 1 .bat at a time, but if that's all you need:

  1. Search for "Command Prompt" in start menu
  2. Right-click, "Pin to Taskbar"
  3. Right-click the pinned icon in taskbar and go to Properties
  4. Change "Target" to the path to your .bat
  5. Change "Start in" to your desired working directory

Clicking it should now run your .bat.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .