-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Script name gets mangled when installed as a console script on Windows #907
Comments
Same error here: did you fixed it somehow? Ty. |
I have the same problem and found a workaround. Since the problem occurs only on Windows when called from the command line shortcut ( At the beginning of commandName.py: import sys, platform, subprocess
if platform.system() == 'Windows' and not sys.argv[0].endswith('.py'):
subprocess.call([sys.executable, __file__])
sys.exit()
# [...] rest of the script
In my case I only open the gui when there are no arguments (when |
This workaround might not work for a PyInstaller or cs_Freeze app, since |
My workaround is ugly, I call this function in my main: def check_windows_exe(app_name):
import platform
if platform.system() == "Windows":
to_file = os.path.join(__file__, app_name)
from_file = to_file + ".exe"
if os.path.exists(from_file) and not os.path.exists(to_file):
import shutil
shutil.copyfile(from_file, to_file) |
I have some command line scripts that I added Gooey to, which are installed via an entry in
setup.cfg
like this:When installing the module with
pip install .
, the script gets installed intoC:\Users\jens\AppData\Local\Programs\Python\Python311\Scripts\gui_error_demo.exe
.Double-clicking this exe shows the Gooey GUI as expected, but when I click "Start" to actually run the script, I get this error:
It seems that the
.exe
suffix is stripped from the script name (sys.argv[0]
), and so when the script is about to be called again by Gooey, it is not found.Am I doing anything wrong? Is Gooey not meant to be used this way?
(It works when the same module is installed on macOS, where the installed script doesn't get a suffix added in the first place)
A demo project which installs the script
gui_error_demo.exe
that shows the problem:gooey_win_bug.zip
Install with
pip install .
in the unzipped folder.The text was updated successfully, but these errors were encountered: