You can’t just copy notepade.exe and run it in Windows 10

You might think you can just copy notepad.exe and run it:

PS C:\tmp> copy C:\windows\notepad.exe c:\tmp
PS C:\tmp> dir c:\tmp *

Directory: C:\tmp

Mode    LastWriteTime       Length  Name
—a————    2/20/2021 11:35 PM  181248  notepad.exe

PS C:\tmp> .\notepad.exe
PS C:\tmp> # Nothing happens...

But nothing happens.

What’s wrong? This is a simple operation!

Answer: You need the .\en-US\notepad.exe.mui file

Or, more generally the .\xx-YY\notepad.exe.mui file, for any local “xx-YY”, for any similar built-in Microsoft™ program.

For notepad.exe you can find this file in c:\windows\xx-YY\notepad.exe.mui

PS C:\tmp> mkdir en-US


    Directory: C:\tmp


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         4/2/2021  11:26 AM                en-US


PS C:\tmp> copy C:\Windows\notepad.exe .\
PS C:\tmp> copy C:\Windows\en-us\notepad.exe.mui .\en-US\
PS C:\tmp> dir


    Directory: C:\tmp


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         4/2/2021  11:27 AM                en-US
-a----        2/20/2021  11:35 PM         181248 notepad.exe


PS C:\tmp> dir .\en-US\


    Directory: C:\tmp\en-US


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        3/19/2019   2:18 AM          12288 notepad.exe.mui


PS C:\tmp> .\notepad.exe
PS C:\tmp> # it works!

Other Examples

Not all exe files have the problem. Here are some other famous exe’s that do, however. They’re in C:\Windows\System32 (not C:\Windows\ like notepad.exe):

    Directory: c:\tmp


Mode                LastWriteTime         Length Name                                                                        
----                -------------         ------ ----                                                                        
d-----         4/2/2021   4:21 PM                en-US                                                                       
-a----        3/19/2019  12:45 AM          34816 ipconfig.exe                                                                
-a----        3/19/2019  12:45 AM          21504 ping.exe                                                                    
-a----        3/19/2019  12:45 AM          17920 tracert.exe                                                                 
-a----        3/19/2019  12:45 AM         369152 msinfo32.exe                                                                

And here are their associated .mui files:

    Directory: c:\tmp\en-US


Mode                LastWriteTime         Length Name                                                                        
----                -------------         ------ ----                                                                        
-a----        3/19/2019   2:17 AM          28160 ipconfig.exe.mui                                                            
-a----        3/19/2019   2:17 AM          11264 ping.exe.mui                                                                
-a----        3/19/2019   2:17 AM           6656 tracert.exe.mui                                                             
-a----        3/19/2019   2:17 AM          30720 msinfo32.exe.mui                                                            

Most programs do not have a en-US\*.mui file in the first place. Here’s a few that do, but run fine when you copy them nevertheless:

   Directory: c:\tmp


Mode                LastWriteTime         Length Name                                                                        
----                -------------         ------ ----                                                                        
d-----        4/14/2021   4:55 PM                en-US-not_needed                                                            
-a----        3/19/2019  12:45 AM          14336 HOSTNAME.EXE                                                                
-a----        2/20/2021  11:33 PM         280064 cmd.EXE                                                                     
-a----        3/19/2019  12:44 AM          86528 nslookup.exe                                                                
-a----        3/19/2019  12:43 AM          40448 Netplwiz.exe                                                                
-a----        3/19/2019  12:45 AM          40960 where.exe                                                                   
-a----        3/19/2019  12:45 AM          71168 whoami.exe                                                                  

tasklist.exe is interesting. It partially works when copied. It works without its .mui file, but only if you provide no parameters. If you want to provide parameters, you need the copied .mui file:

    Directory: c:\tmp


Mode                LastWriteTime         Length Name                                                                        
----                -------------         ------ ----                                                                        
d-----        4/14/2021   6:33 PM                en-us                                                                       
-a----        3/19/2019  12:45 AM         101376 tasklist.exe                                                                


    Directory: c:\tmp\en-us


Mode                LastWriteTime         Length Name                                                                        
----                -------------         ------ ----                                                                        
-a----        3/19/2019   2:17 AM          15872 tasklist.exe.mui                                                            

An oddball is mspaint.exe. It has a .mui but copying it still doesnt work. It may be interacting with the Windows 10 “App” interface.

References: