All Projects β†’ alirdn β†’ Windows Kill

alirdn / Windows Kill

Licence: mit
Send signal to process by PID in Windows, like POSIX kill

Projects that are alternatives of or similar to Windows Kill

signal2html
Export a Signal backup to pretty HTML
Stars: ✭ 45 (-56.73%)
Mutual labels:  signal
Cs.2click
πŸ”Š A Better Audio Router for a Modular System.
Stars: ✭ 7 (-93.27%)
Mutual labels:  signal
Whisperfish
Signal client for Sailfish OS
Stars: ✭ 62 (-40.38%)
Mutual labels:  signal
signal-bot
A simple bot framework for Signal
Stars: ✭ 92 (-11.54%)
Mutual labels:  signal
Eventpp
Event Dispatcher and callback list for C++
Stars: ✭ 474 (+355.77%)
Mutual labels:  signal
Observable
Observer pattern and signals/slots for C++11 projects
Stars: ✭ 27 (-74.04%)
Mutual labels:  signal
presage
A high-level Rust library to help write clients for the Signal Messenger.
Stars: ✭ 27 (-74.04%)
Mutual labels:  signal
Watomatic
Auto reply app helping you move away from less private messengers like WhatsApp and soon Facebook Messenger
Stars: ✭ 83 (-20.19%)
Mutual labels:  signal
Wide Residual Nets For Seti
Classification of simulated radio signals using Wide Residual Networks for use in the search for extra-terrestrial intelligence
Stars: ✭ 22 (-78.85%)
Mutual labels:  signal
Silence
PROJECT MOVED: https://git.silence.dev/Silence/Silence-Android/ (GitHub is just a mirror.)
Stars: ✭ 1,019 (+879.81%)
Mutual labels:  signal
Neurokit
NeuroKit2: The Python Toolbox for Neurophysiological Signal Processing
Stars: ✭ 264 (+153.85%)
Mutual labels:  signal
Signal Back
Decrypt Signal encrypted backups outside the app
Stars: ✭ 468 (+350%)
Mutual labels:  signal
Unity Signals
Signals for Unity3D
Stars: ✭ 32 (-69.23%)
Mutual labels:  signal
stockwell
Stockwell transform for Python
Stars: ✭ 38 (-63.46%)
Mutual labels:  signal
Eventpp
Minimal C++ Event Bus
Stars: ✭ 69 (-33.65%)
Mutual labels:  signal
tmo-live-graph
A simpe react app that plots a live view of the T-Mobile Home Internet Nokia 5G Gateway signal stats, helpful for optimizing signal.
Stars: ✭ 15 (-85.58%)
Mutual labels:  signal
Sinewave
Sine wave library for Arduino. Produces a sine signal and passes the output to a PWM pin.
Stars: ✭ 11 (-89.42%)
Mutual labels:  signal
Ooktools
πŸ“‘ On-off keying tools for your SD-arrrR
Stars: ✭ 102 (-1.92%)
Mutual labels:  signal
Signal Windows
Unofficial Signal Private Messenger for Windows
Stars: ✭ 83 (-20.19%)
Mutual labels:  signal
Pulsesensorstarterproject
The Best Way to Get Started with your PulseSensor and Arduino
Stars: ✭ 38 (-63.46%)
Mutual labels:  signal

windows-kill

windows-kill – Send signal to process by PID in Windows, like POSIX kill

Send signal to process by PID in Windows, like POSIX kill

Windows has no process signaling mechanism like what POSIX provide using the kill command. But windows-kill could send signal to process by PID. :)

Why windows-kill?

Well, I'm a node.js developer. Node has a functionality that could send signals to other process, by their PID. This functionality works great on POSIX OSes but in Windows, no signal is supported (even SIGINT and SIGBREAK, that node stated is supported in Windows), and sending any of those signals to any process in windows, will result in an immediate kill of those process (Even if those process have listener on sent signals). In one of my project signal sending and listening was a serious need, so I've made some research about signal sending in windows, and found an OLD (2003) project named SendSignal. Well that project doesn’t support 64bit systems and also could only send SIGBREAK (Ctrl + Break) signal. More searches lead me to an enhanced version of SendSignal, that add support of 64bit systems, but only support sending SIGINT (Ctrl + C) signal. So I've decided to write a library that support both 32bit & 64bit systems, and also both SIGBREAK and SIGINT signals. The result is the windows-kill-library that has all the functionality I've needed, and is the heart of windows-kill. For information about windows-kill-library navigate to windows-kill-library folder.

Features

  • Support both 32bit (Win32) & 64bit (x64) Windows
  • Support both SIGBREAK (Ctrl + Break) and SIGINT (Ctrl + C) Signals
  • A library that could be used directly (#include), As a static library (.lib) and a dynamic library (.dll)
  • Prebuilt binaries and libraries

How it works & Limitations

To read a detailed info please visit windows-kill-library Readme. But it's good to know that windows-kill will create a ctrl event in the process that is calling it. If the caller process has no child process or not a child process of another process, nothing will happen. But if has child process or is child process, sending signal will trigger the ctrl routine of all processes in the process group, and as a result, those process will be terminated.

Installation

Chocolatey - 32bit (Win32) and 64bit (x64)

Install

> choco install windows-kill

Update

> choco upgrade windows-kill

Prebuilt Binaries

You can also download the prebuilt binaries of windows-kill. You could find them in repo's Releases page. Both the 32bit (Win32) and 64bit (x64) versions are available.

Compile & Build from Source code

If you want to compile from the source code, you must install Visual Studio plus C++ development tools first. I'm developing this project in Visual Studio 2015 update 3. So it's recommended to use the same Visual Studio version. But maybe other versions are ok to use. Also I didn't compile the project using other C++ compilers. So any contribution to add other compilers support is welcomed!

After the Visual Studio installation, clone the GitHub project or download the latest master branch source code and extract the downloaded zip. Go to the project folder and open the windows-kill.sln in Visual Studio. From the build menu, click on batch build. There you could see different build configurations. For more information about build configuration see Build Configurations.

Usage Examples

Using the windows-kill is easy & straightforward. It's just like POSIX kill. Just navigate to the folder that contains windows-kill.exe and open a cmd from that folder. Or add that folder in Environment Variables so you could use the command from any cmd. If signal sending was successful or any error occurred during the sending, appropriate message will be print in cmd.

Sending signal to PID

> windows-kill -SIGNALTYPE PID

Sending SIGBREAK (Ctrl + Break) to sample 1234 PID

> windows-kill -SIGBREAK 1234
> windows-kill -1 1234

Sending SIGINT (Ctrl + C) to sample 1234 PID

> windows-kill -SIGINT 1234
> windows-kill -2 1234

List supported signal types

> windows-kill -l

Usage help

> windows-kill -h

Build Configurations

windows-kill Visual Studio solution contains different build configuration. There are two main Debug and Release configuration category. Each of these categories have two separate configurations for building the windows-kill-library as a dynamic link library (.dll) or static link library (.lib). Also all the build configurations in Visual Studio has 32bit (Win32) & 64bit (x64) versions. In Summary there are 4 build configurations:

  • Debug Dll: Build windows-kill-library as a .dll with debug enabled.
  • Debug Lib: Build windows-kill-library as a .lib with debug enabled.
  • Release Dll: Build windows-kill-library as a .dll without debug.
  • Release Lib: Build windows-kill-library as a .lib without debug.

Resources

The windows-kill & windows-kill-library are based on:

Contributing

We love contributions from everyone. Please read Contributing guide.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].