{"id":21088101,"url":"https://github.com/ascriver/process_memory_writer","last_synced_at":"2026-05-13T07:44:09.098Z","repository":{"id":261915380,"uuid":"885713288","full_name":"AScriver/process_memory_writer","owner":"AScriver","description":"A Python extension written in Rust using PyO3 that allows reading and writing memory of another process on Windows systems.","archived":false,"fork":false,"pushed_at":"2024-11-09T09:37:10.000Z","size":13,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-14T05:41:55.583Z","etag":null,"topics":["memorymanipulation","memoryreading","memorywriting","pyo3","python","pythonextension","rust","rustbindings","windows"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AScriver.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-09T07:30:34.000Z","updated_at":"2024-12-30T22:30:55.000Z","dependencies_parsed_at":"2024-11-09T08:26:10.102Z","dependency_job_id":"b7eab223-2bd6-4048-9fe4-70a9791320c1","html_url":"https://github.com/AScriver/process_memory_writer","commit_stats":null,"previous_names":["ascriver/process_memory_writer"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AScriver%2Fprocess_memory_writer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AScriver%2Fprocess_memory_writer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AScriver%2Fprocess_memory_writer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AScriver%2Fprocess_memory_writer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AScriver","download_url":"https://codeload.github.com/AScriver/process_memory_writer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243532532,"owners_count":20306152,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["memorymanipulation","memoryreading","memorywriting","pyo3","python","pythonextension","rust","rustbindings","windows"],"created_at":"2024-11-19T21:14:40.899Z","updated_at":"2026-05-13T07:44:09.071Z","avatar_url":"https://github.com/AScriver.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Process Memory Writer\r\n\r\n`process_memory_writer` is a Python extension written in Rust using PyO3. It allows reading and writing memory of another process on Windows systems.\r\n\r\n## Overview\r\n\r\nThe `MemoryWriter` class enables users to:\r\n\r\n- **Open a process** by its executable name or PID.\r\n- **Read memory** from the target process.\r\n- **Write memory** to the target process.\r\n- **Continuously write data** to a specific memory address in the process.\r\n\r\n## Safety and Security Considerations\r\n\r\n- Modifying another process's memory can be dangerous and may cause system instability.\r\n- Ensure that you have the necessary permissions to manipulate the target process.\r\n- Be aware of legal implications and software licenses when using this functionality.\r\n\r\n## Installation\r\n\r\n1. Ensure you have Rust and Python installed on your system.\r\n2. Clone the repository.\r\n3. Navigate to the project directory.\r\n4. Create a virtual environment and activate it:\r\n    ```sh\r\n    python -m venv pyo3\r\n    source pyo3/Scripts/activate  # On Windows\r\n    ```\r\n5. Install the required dependencies:\r\n    ```sh\r\n    pip install -r requirements.txt\r\n    ```\r\n6. Build the project using Maturin:\r\n    ```sh\r\n    maturin develop\r\n    ```\r\n\r\n## Usage\r\n\r\nHere is an example of how to use the `MemoryWriter` class:\r\n\r\n```python\r\nfrom process_memory_writer import MemoryWriter\r\n\r\n# Create a new MemoryWriter instance\r\nwriter = MemoryWriter()\r\n\r\n# Open a process by name\r\nsuccess = writer.open_process(\"notepad.exe\")\r\nif success:\r\n    print(\"Process opened successfully\")\r\nelse:\r\n    print(\"Failed to open process\")\r\n\r\n# Open a process by PID\r\nsuccess = writer.open_process(1234)\r\nif success:\r\n    print(\"Process opened successfully\")\r\nelse:\r\n    print(\"Failed to open process\")\r\n\r\n# Set memory data to write\r\nwriter.set_memory_data(0x12345678, b\"data\")\r\n\r\n# Start continuous memory writing\r\nwriter.start()\r\n\r\n# Stop continuous memory writing\r\nwriter.stop()\r\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fascriver%2Fprocess_memory_writer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fascriver%2Fprocess_memory_writer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fascriver%2Fprocess_memory_writer/lists"}