Skip to main content

A small utility which allows you to generate Windows executables that can run custom commands on your Windows system.

Project description

gen-exe

GitHub workflow status: master PyPI version Code style: black

A small utility which allows you to generate Windows executables that can run custom commands on your Windows system.

Features

  • generate portable executables that can run customizable commands
  • commands can use the {EXE_DIR} macro to get the directory relative to the executable
  • the generated executable supports passing command-line arguments
  • you can add icons during or after generation of the executable
  • installation adds two CLIs: gen-exe and add-icon-to-exe

Installation

Install from PyPi using:

pip install gen-exe

Usage gen-exe

Custom commands can be embedded in the executables by providing a command string to the CLI, for example:

gen-exe test.exe "echo hello world"

The command string argument also supports the {EXE_DIR} macro, which expands the path where the executable is executed from, for example:

gen-exe test.exe "echo I am running from: {EXE_DIR}"

This can be used to run relative executables:

gen-exe test.exe "{EXE_DIR}\\another.exe"

Optionally you can provide an icon file for the executable.

gen-exe test.exe "echo I have a fancy icon now..." -i path-to-your.ico

Another use case is to call a script or command using a Python interpreter, for example:

gen-exe test.exe "python -c print(\'hello world\')"

For other options see the help:

gen-exe --help

Usage generated executables

Execute them by double clicking or via the command line:

test.exe optional_argument_1 optional_argument_2

Usage add-icon-to-exe

To add an icon called test.ico to a test.exe executable file.

add-icon-to-exe test.exe test.ico

Note that the utility will replace any icons that already exist in the target executable.

Contributing

Fork the gen-exe repository

Setup your forked repository locally as an editable installation:

$ cd ~
$ git clone https://github.com/yourproject/genexe
$ pip install --editable ./genexe

Now you can work locally and create your own pull requests.

Feel free to open issues and pull requests.

Maintainer

Sil van de Leemput

History

0.2.1 (2021-02-08)
  • Added hide-console option to the executable and the CLI
0.2.0 (2021-02-07)
  • Embedded runtimes in the executable. Executable should now work on Windows systems without VC++ redistributables installed
0.1.1 (2021-02-06)
  • Better documentation - updated the README.md
0.1.0 (2021-02-06)
  • Initial release on PyPi

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gen-exe-0.2.1.tar.gz (70.6 kB view details)

Uploaded Source

Built Distribution

gen_exe-0.2.1-py3-none-any.whl (70.4 kB view details)

Uploaded Python 3

File details

Details for the file gen-exe-0.2.1.tar.gz.

File metadata

  • Download URL: gen-exe-0.2.1.tar.gz
  • Upload date:
  • Size: 70.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for gen-exe-0.2.1.tar.gz
Algorithm Hash digest
SHA256 f02bfe6f8fe123c50320a3ef159d85ffaf2dcd5e80f191e308231f51ec82b015
MD5 77865c068f8e62ee7febe6597b37a79b
BLAKE2b-256 d0656c4c1d16ea897ee67bec7311ee1c61a8977e46f79bb66cc9babbb04a5757

See more details on using hashes here.

File details

Details for the file gen_exe-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: gen_exe-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 70.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for gen_exe-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d76215e9d91b0d3788db2000e2000b57e3929607e3eb542f8c5a2eeb97cd9c34
MD5 88749f33205fa253af338e0adcdd8cbb
BLAKE2b-256 b22ac30cb8322799bad2ac475211aec36a2b95dc9e31e121aaaab1f7c8ccf48b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page