🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

py-win-mp-exclude

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

py-win-mp-exclude

Manage Microsoft Defender path exclusions from Python, CLI, or GUI.

pipPyPI
Version
0.2.2
Weekly downloads
0
Maintainers
1
Weekly downloads
 

py-win-mp-exclude

py-win-mp-exclude is a Windows package for adding, removing, and listing Microsoft Defender path exclusions from a CLI, a small GUI, or Python code.

The tool uses PowerShell's Defender cmdlets:

  • Add-MpPreference -ExclusionPath
  • Remove-MpPreference -ExclusionPath
  • Get-MpPreference

When a CLI subcommand or the GUI starts without administrator privileges, the program relaunches itself once through py-admin-launch. A hidden startup flag prevents repeated elevation attempts. --dry-run commands only print the PowerShell script and do not request elevation.

Installation

pip install py-win-mp-exclude

CLI

Add a file or folder exclusion:

win-mp-exclude add C:\path\to\file.exe
win-mp-exclude add C:\path\to\folder

Remove a file or folder exclusion:

win-mp-exclude remove C:\path\to\file.exe
win-mp-exclude remove C:\path\to\folder

List configured path exclusions:

win-mp-exclude list

Preview the PowerShell command without running it:

win-mp-exclude --dry-run add C:\path\to\folder

The package also installs the alias py-win-mp-exclude.

GUI

Launch the graphical interface:

win-mp-exclude-gui

The GUI can add exclusions, remove exclusions, remove a selected exclusion, list current exclusions, and refresh the list. The package also installs the alias py-win-mp-exclude-gui.

Python API

The Python API exposes the same add, remove, list, and dry-run capabilities used by the CLI and GUI:

from win_mp_exclude import add_exclusion, list_exclusions, remove_exclusion

add_result = add_exclusion(r"C:\path\to\folder")
print(add_result.message)

for path in list_exclusions().exclusions:
    print(path)

remove_result = remove_exclusion(r"C:\path\to\folder")
print(remove_result.message)

Use dry_run=True to inspect the PowerShell script without applying a change:

from win_mp_exclude import add_exclusion

result = add_exclusion(r"C:\path\to\folder", dry_run=True)
print(result.script)

By default, Python mutating calls can request administrator elevation once. Pass elevate=False if your program wants to handle elevation itself.

Development

Build with Poetry:

poetry build

Publish with Poetry:

poetry publish

Keywords

windows

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts