When running Python script at the command line I get this error
Windows cannot access the specified device, path, or file. You man not have the appropriate permissions to access the item.
How can I check what path does the system try to access? No entries are created in any of system logs (Application, Security, Setup, System). All solutions which I found on the web mention changing file's properties. The problem is in this case I don't know what file the system tries to use to handle Python script. How can I find this information? I guess a tool which monitors all files the system tries to open might help here.
When I try to run Python script with
.py extenstion at the command line by just giving script's name (like
sample.py) I get the above error. I guess the problem is due to bad file association but... running
reg query HKCR\.py /ve gives
(Default) REG_SZ Python.File and
reg query HKCR\Python.File\shell\open\command /ve gives
(Default) REG_SZ c:\python\2.7\python.exe "%1" %* and the file
c:\python\2.7\python.exe exists and I can run it from command line without problem. This makes me think that system tries to open Python script using some other path in the registry. The problem is I have no idea what's this path.
Windows Vista 64bit, running 64bit cmd.exe, 64bit Python.
Process Monitor is very helpful but I still can't find the exact root causing problem. Trying to launch Python script generates 866 entries:
BUFFER TOO SMALL 1 END OF FILE 1 FILE LOCKED WITH ONLY READERS 12 NAME NOT FOUND 301 NO MORE ENTRIES 4 REPARSE 5 SUCCESS 542
NO SUCH FILE result. I think it's because system doesn't even try to launch the executable to open Python file with due to not being able to find suitable registry entry defining handler for
.py files. There are 178 entires of type
RegQueryKey and 141 entries of type
RegQueryValue but I have hard time trying to draw any conclusion reading them.