Re: A switch somewhere, or bug? CORRECTION

Thomas Passin <[email protected]> Sun, 7 Dec 2025 09:46:46 -0500
Newsgroups gmane.comp.python.general
Message-ID <[email protected]>
On 12/7/2025 7:22 AM, Roel Schroeven wrote:
> Op 7/12/2025 om 1:54 schreef Thomas Passin:
>> As I explained in my last post, that's because in Windows 11 when 
>> double-clicking, the working directory is the system's Windows 
>> directory, not the one your program is in.
> Irrespective of anything else that's going on, that's not my experience. 
> I just tried, and double-clicking a python script makes the directory 
> that I have open in Explorer the current directory. I've seen the same 
> not just with scripts but also with executables. I don't think this is 
> the cause.

It *was* the case *on my system* when I tested the program under 
consideration.  I included the output and it clearly showed that the 
working directory at launch was C:\WINDOWS\system32.

The situation about file associations in Windows 11 is complicated 
because there is the new mechanism, and the old one is still there, 
apparently, and they may not always work the same way.

By the "old" mechanism I mean the way that the associations were set up 
in the registry by specifying a logical name like Python.file for the 
.py extension, and having registry keys for the default program to use 
for Python.file types. You could display (or change, I think, though I 
never did) these associations from the command line with the programs 
assoc and ftype. For example, I used to be able to run this:

C:\Users\tom>ftype Python.file
Python.file="C:\Windows\py.exe" "%L" %*

Now I get this:

C:\Users\Tom>assoc .py
File association not found for extension .py

C:\Users\Tom>ftype Python.file
File type 'Python.file' not found or no open command associated with it.

The lack of such file associations in my registry is not limited to 
Python files. It's the same for Javascript and Java files (the only 
other ones I looked at). You are supposed to use the Settings/Default 
apps page to make changes now, but you can't change the launch 
arguments, or at least I don't know how.

I used to add or change the associations right in the registry when 
needed. The programs assoc and ftype still exist on my Win 11 system but 
they don't return anything, and the registry entries behind them aren't 
present any more.

I tend to launch the programs I use the most using <WIN>-R, and when 
needed I can modify the launch command used in the dialog that pops up. 
Most others I launch using a small batch file. I hardly ever launch any 
more by double clicking a bare file icon.  So I could easily have missed 
a change like this in Windows's behavior.

At any rate, the OP has been making things harder by not following, or 
not following completely, the simple suggestions that have been made. He 
needs to find out what the working directory is when the program is run 
by double-clicking, or he has to make his program work no matter what 
the startup directory is.  Sample code for all that has been posted in 
this thread.