I need to run this script I made. This batch should copy compiled program on STM32 Nucleo. It uses wmic to find Nucleo's virtual drive's letter by it's label:

@echo off
for /f %%D in ('wmic volume get DriveLetter^, Label ^| find "NODE_F446RE"') do set nucleo_drive=%%D
  IF EXIST main.bin (
    @echo on
    xcopy main.bin %D%
    @echo off
    echo Copied main.bin on nucleo
  ) ELSE (
    echo Binary not found. Run `mingw32-make` in this directory to compile the project.
) ELSE (
  echo Nucleo drive not found. If needed, edit the `find "NODE_F446RE"` part of this script to refference your nucleo volume name.

But I get this error:

'wmic' is not recognized as an internal or external command, operable program or batch file.

I ensured that Windows Management Instrumenation service is running. What else could be wrong?

  • 1
    Try absolute path to wmic, it should live in C:\Windows\System32\wbem
    – Alex
    Feb 14, 2017 at 13:20

4 Answers 4


This indicates that the wmic utility's directory is not found on your PATH. Open the advanced System Properties window (you can open the System page with Windows+Pause/Break) and on the Advanced tab, click Environment Variables. In the section for system variables, find PATH (or any capitalization thereof). Add this entry to it:


Note that entries are delimited by semicolons.

  • 4
    +1 for a shortcut I didn't know about :)
    – DavidPostill
    Feb 15, 2017 at 0:02
  • Before going through these steps, it's probably worth navigating to this folder in an elevated (run as admin) command-line window to ensure the command is really there.
    – FreeText
    Oct 1, 2018 at 21:09

In my case, I had %SystemRoot%\System32\Wbem on the path already, but a recent USB device driver I installed additionally added C:\Windows\System32 to the end of my path, and this stopped Windows from finding the wmic command. When I removed the trailing C:\Windows\System32 from the path, wmic was found again.


When I was using C:\Windows\System32 in the path, I was getting the same warning while installing Tails operating system on an USB stick.

When I change this to: %SystemRoot%\System32\Wbem, everything gets sorted and the warning is gone.


If you're using Windows 11, Microsoft has removed WMIC from the latest Insider builds.

Instead, you should now use Powershell commands.

To list all WMI Powershell commands, you can run Get-Command -Noun WMI*.

  • Well what commands specifically? Dec 3, 2021 at 9:19
  • @TomášZato-ReinstateMonica Run Get-Command -Noun WMI* to list all WMI-related Powershell commands. Dec 3, 2021 at 11:10

You must log in to answer this question.

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