Skip to main content

A python library for interacting with Wine.

Project description

libwine

A python library for interacting with Wine.

CodeFactor PyPI version

Usage

from libwine.wine import Wine

my_wineprefix = Wine(
    winepath="/path/to/wine", # folder
    wineprefix="/path/to/wineprefix", # empty or existing
    verbose=3 # +all
)

'''
Update the wineprefix directory.
'''
my_wineprefix.update()

'''
Simulate system restart for the wineprefix,
don't do normal startup operations.
'''
my_wineprefix.restart()

'''
Kill all processes running inside the wineprefix.
'''
my_wineprefix.kill()

'''
Simulate system shutdown for the wineprefix, don't reboot.
'''
my_wineprefix.shutdown()

'''
Launch the winecfg tool on the active display.
'''
my_wineprefix.winecfg()

'''
Launch the cmd tool.
'''
my_wineprefix.cmd()
my_wineprefix.cmd(terminal="gnome-terminal") # on external terminal

'''
Launch the taskmgr tool on the active display.
'''
my_wineprefix.taskmanager()

'''
Launch the control tool on the active display.
'''
my_wineprefix.controlpanel()

'''
Launch the uninstaller tool on the active display.
'''
my_wineprefix.uninstaller()

'''
Launch the regedit tool on the active display.
'''
my_wineprefix.regedit()

'''
Execute custom wine commands inside the wineprefix.
'''
my_wineprefix.command("DIR")

'''
Execute exe/msi/bat files inside the wineprefix.
'''
my_wineprefix.run_exe("path/to/file.exe")
my_wineprefix.run_msi("ath/to/file.msi")
my_wineprefix.run_bat("ath/to/file.bat")

'''
List all keys values from the wineprefix register.
'''
my_wineprefix.reg_list("HKEY_CURRENT_USER\\Software\\Wine\\Explorer\\Desktops")

'''
Add (or erdit) key to the wineprefix register.
'''
my_wineprefix.reg_add(
    key="HKEY_CURRENT_USER\\Software\\Wine\\Explorer\\Desktops",
    value="Default",
    data="1920x1080"
)

'''
Delete key from the wineprefix register.
'''
my_wineprefix.reg_delete(
    key="HKEY_CURRENT_USER\\Software\\Wine\\Explorer\\Desktops",
    value="Default"
)

'''
Change Windows version.
'''
my_wineprefix.set_windows("win10")

'''
Manage Virtual Desktop.
'''
my_wineprefix.set_virtual_desktop(
    status=True,
    res="800x600"
)
my_wineprefix.set_virtual_desktop(status=False)

'''
Enable or disable the windows manager decorations.
'''
my_wineprefix.set_decorations(True)

'''
Enable or disable the windows manager control.
'''
my_wineprefix.set_window_managed(True)

'''
Enable or disable auto mouse capture in fullscreen.
'''
my_wineprefix.set_fullscreen_mouse_capture(True)

'''
Set custom DPI value.
'''
my_wineprefix.set_dpi(120)

'''
Overriding a DLL in the wineprefix.
'''
my_wineprefix.override_dll(
    name="ucrtbase",
    type=2 # builtin/native
)

my_wineprefix.override_dll(
    name="ucrtbase",
    restore=True
)

'''
List all DLL overrides in the wineprefix
'''
my_wineprefix.override_dll_list()

'''
List running processes inside the wineprefix.
'''
my_wineprefix.processes()

'''
Kill a process
'''
process = my_wineprefix.processes()[0]
process.kill()

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

libwine-0.7.linux-x86_64.tar.gz (16.5 kB view hashes)

Uploaded Source

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