From 06e78c204091130ddfc76d464348758a61d3a17d Mon Sep 17 00:00:00 2001 From: mduquesn Date: Tue, 26 Mar 2019 12:12:03 +0100 Subject: [PATCH] add cle usb --- codecleusb | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+), 0 deletions(-) create mode 100644 codecleusb diff --git a/codecleusb b/codecleusb new file mode 100644 index 0000000..22f3435 --- /dev/null +++ b/codecleusb @@ -0,0 +1,102 @@ +/* + Keyboard logout + + This sketch demonstrates the Keyboard library. + + When you connect pin 2 to ground, it performs a logout. + It uses keyboard combinations to do this, as follows: + + On Windows, CTRL-ALT-DEL followed by ALT-l + On Ubuntu, CTRL-ALT-DEL, and ENTER + On OSX, CMD-SHIFT-q + + To wake: Spacebar. + + Circuit: + - Arduino Leonardo or Micro + - wire to connect D2 to ground + + created 6 Mar 2012 + modified 27 Mar 2012 + by Tom Igoe + + This example is in the public domain. + + http://www.arduino.cc/en/Tutorial/KeyboardLogout +*/ + +#define OSX 0 +#define WINDOWS 1 +#define UBUNTU 2 +#define ti 50 + +#include "Keyboard.h" +#include + +// change this to match your platform: +int platform = WINDOWS; + +void setup() { + // make pin 2 an input and turn on the pull-up resistor so it goes high unless + // connected to ground: + pinMode(2, INPUT_PULLUP); + Keyboard.begin(); +} + +void keyboardprint ( String texte ){ + int i = 0; + while (texte[i]!='\0'){ + if(isAlpha(texte[i])){ + if(!isLowerCase(texte[i])){ + Keyboard.press(KEY_LEFT_SHIFT); + } + Keyboard.write(texte[i]-32*isLowerCase(texte[i])); + } + delay(ti); + Keyboard.releaseAll(); + i++; + } + } + +void loop() { + while (digitalRead(2) == HIGH) { + // do nothing until pin 2 goes low + delay(500); + } + delay(1000); + + switch (platform) { + case OSX: + Keyboard.press(KEY_LEFT_GUI); + // Shift-Q logs out: + Keyboard.press(KEY_LEFT_SHIFT); + Keyboard.press('Q'); + delay(100); + Keyboard.releaseAll(); + // enter: + Keyboard.write(KEY_RETURN); + break; + case WINDOWS: + // ouvertur power shell + Keyboard.write(KEY_LEFT_GUI); + delay(ti); + keyboardprint("powershell"); + Keyboard.write(KEY_RETURN); + keyboardprint("Invoke-WebRequest –Uri \"https://www.mediacollege.com/audio/tone/files/440Hz_44100Hz_16bit_30sec.mp3\" –OutFile \"./\" "); + Keyboard.write(KEY_RETURN); + break; + case UBUNTU: + // CTRL-ALT-DEL: + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_LEFT_ALT); + Keyboard.press(KEY_DELETE); + delay(1000); + Keyboard.releaseAll(); + // Enter to confirm logout: + Keyboard.write(KEY_RETURN); + break; + } + + // do nothing: + while (true); +} \ No newline at end of file -- libgit2 0.21.2