Ohjelmoitava "tekonäppäimistö"

automatisointia

Tarkoitus olisi tehdä testausta ja syöttää näppäimistöllä ohjelmaan ns. mitä sattuu. Kyseessä on aikaa vievä ja tympeä prosessi. Olisiko jollain patentilla mahdollista kytkeä esimerkiksi toinen tietokone testauskoneen usb-väylään sillä tavalla, että se näkyisi jonkun "näppäimistösovelluksen" ansiosta testikoneessa tavallisena näppäimistönä? Näppäinpainalluksia tuottavassa koneessa olisi sitten ohjelma, jonka kautta halutut testisyötteet lähetettäisiin testauskoneelle. Testisyötteiden muoto voisi olla vaikka tekstitiedosto, ja jonkunlaisia viiveitä ja kestoja näppäinpainalluksille sitten erikoiskomennoin.

4

399

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • gsdfgsfgsdfgfsdg

      miksei xdotool lähettämään emuloituja näppäimen painalluksia vaikka bash-skriptin kautta?

    • trollerson

      Siinä on karkeasti kaksi vaihtoehtoa.

      Ensimmäinen vaihtoehto on täysin softalla hoitaa koko homma, jolloin käytännön toteutus riippuu mm. käyttöjärjestelmästä.

      Windowsille löytynee montakin eri tapaa, jolla onnistuu. Esim. sen niminen ohjelma kuin AutoHotKey saattaisi olla aika yksinkertainen.

      Jos AutoHotkey tyyliset eivät käy, niin muitakin on. Microsoftin sivullakin on näemmä jotakin koodiesimerkkejä:
      https://docs.microsoft.com/en-us/dotnet/framework/winforms/how-to-simulate-mouse-and-keyboard-events-in-code

      Googlaamalla löytyy varmasti lisää.

      Linuxille ja muille on varmasti omat vastaavat.


      Toinen vaihtoehto on käyttää jotakin mikrokontrolleripohjaista laitetta, jonka USB-liitännässä saa näkymään helposti näppäimistönä. Esim. osa Arduino levyistä voisi olla aika edullinen palikka, jonka pitäisi taipua tähän käyttöön.

      https://www.arduino.cc/reference/en/language/functions/usb/keyboard/

    • MS_rulez

      Mikrokontrollerilla homman voi tehdä helposti, JOS emuloidaan perinteistä PS/2 -näppäimistöä (se pieni pyöreä MiniDIN -liitin, 6 nastaa).

      JOS on pakko olla USB, homma muuttuu huomattavasti hankalammaksi !

      Miksikö?

      Koska USB on isoille yrityksille mainio liitäntäratkaisu toteuttaa liitäntä kahden eri laitteen välillä.

      Harrastajan yksin kappalein tekemänä toimivan USB -toteutuksen tekeminen onkin sitten huomattavasti hankalampaa kuin toimivan PS/2 -näppiksen tekeminen, joka on suht. yksinkertaista.

      JOS koneessa ei ole PS/2 -näppisliitäntää , siihenkin löytyy apu: maailmalta n. 1 € (esim. alibaba piste com), suomihinnoilla ehkä 10€: adapteri (esim. Teknikmagasinet piste fi), jolla PS/2 -näppiksen ( ja usein myös PS/2 hiiren) saa kiinni PC:n USB -liittimeen.

      Eli laitteistoratkaisu kannattaisi tehdä vanhalla PS/2 -tekniikalla (huomattavasti helpompaa) ja tarvittaessa käyttää adapteria, jos uudehkossa PC:ssä on vain USB.

      Samalla teknologialla voisi myös tehdä suominäppiksen, joka tietokoneen näkökulmasta onkin jenkkinäppis. Hyöty: käyttöjärjestelmässä ei enää tarvita suomalaista näppäimistöajuria.

      Eli kun käyttäjä painaa ä, näppis simuloi näppäilyt:

      (Alt alas) 132 (Alt ylös)

      tuo 132 siis numerolohkon näppäimin.

      Ja sarjan alkuun ja loppuun NumLock, jos NumLock alussa on pois päältä.

      tuo toimii kaikissa Windows -versioissa ihan ikivanhasta Windows 1.0:sta uusimpaan Windows 10:een.

      Toimii myös osassa linuxeja.

      Eli, jos kernelin version tekijät ovat ymmärtäneet emuloida ikivanhaa BIOS -toiminnallisuutta myös protected modessa.

      Microsoft on tämän ymmärtänyt, vaan miten on linux kernel -koodaajien osalta?

      1) ymmärretty ja toteutettu

      2) ymmärretty kyllä, mutta heidän mielestään muka tarpeetonta toteuttaa

      3) ei edes ymmärretty.

      Kyllä, luotan Microsoftin koodaajien ammattitaitoon ja asenteeseen huomattavasti enemmän kuin linux kernel -kehittäjien.

      Toki myös Microsoftin koodaajat ovat tehneet virheitä, kuten se, että he ovat virheellisesti kuvitelleet, ettei vuosi 2000 ole karkausvuosi. (Tosiasia: jos vuosiluku on jaollinen 400:lla, se ON karkausvuosi).

      ref: aikaleimaformaatti, jossa 8-tavuiseen IEEE real -liukulukutyyppiin tallennetaan päiväys ja kellonaika siten, että 0.0 vastaa 1899-12-30 kello 00:00:00.
      1.0 vastaa 1899-12-31 kello 00:00:00 jne.

      HUOM: välillä (-1.0) .. (0.0) EI OLE arvoja.

      kellonaika on 0.25 = 06:00 aamulla ja 0.75 = klo 18:00.

      HUOM: kellonaika on AINA positiivinen, myös silloin kun päivämäärä on negatiivinen eli ennen 1899-12-30 olevat päivämäärät !

    • msalatia

      xdotool linuxeihin on "täydellinen". Saa hiiret ym. painamaan, vaikka koko yön...

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Riikka: 3 euron bensa, Ruotsi: bensavero jopa alle EU-minimin

      Eipä vaan suomalainen autoilija saa kaikkien rakastamalta Riikalta sympatiaa. Ruotsissa on eri meininki, siellä diskutee
      Maailman menoa
      82
      3240
    2. Riikka runnoo: datakeskuksille tulee UUSI yritystuki

      "Suomen valtio erikseen tukee esimerkiksi kryptovaluuttaan tai aikuisviihteeseen tai muuhun keskittyviä datakeskuksia."
      Maailman menoa
      36
      2060
    3. Eläkeläiset siirrettävä muuttotappioalueille

      Joutoväki pois ruuhkauttamasta elättäjien arkea. Samalla putoaa jokaisen asumiskulut ja rahaa jää enemmän kuluttamiseen.
      Maailman menoa
      169
      1830
    4. Miksi naisen pitäisi maksaa 50/50

      Vuokrasta miehelle? Eikö se ole miehelle lahja, ja aarre, jos nainen suostuu muuttamaan kanssasi asumaan?
      Ikävä
      298
      1366
    5. Minkä arvosanan 4-10 annat Susanna Laineelle Farmi-juontajana?

      Susanna Laine vetää Farmi Suomi -realityä. Minkä arvosanan 4-10 annat Suskille juontohommista? Suosikkijuontaja teki
      Tv-sarjat
      34
      1268
    6. Onko se liikaa pyydetty

      Voisitko sinä mies kerätä rohkeutta ja ottaa yhteyttä? Minä en jaksa tätä enää. On niin ikävä sinua. Minä niin haluaisin
      Ikävä
      91
      1200
    7. Onko kivaa jättää

      elämän suurin rakkaus hiljaisuuteen?
      Ikävä
      108
      1194
    8. En kerro nimeäsi nainen

      Sillä olet nyt salaisuus jota kannan sydämessäni. Tämä mitä tunnen ja kuinka sinuun vahvasti ihastuin on jo niin erikoin
      Ikävä
      71
      1090
    9. Lahkojen uudestikasteille ei pitä mennä

      Sananl. 22:3 Mielevä näkee vaaran ja kätkeytyy, mutta yksinkertaiset käyvät kohti ja saavat vahingon.
      Kaste
      120
      1084
    10. Kaatopaikka Inhassa

      Kuka omistaa kyseisen kaatopaikan? Näkymä tielle kammottava!
      Ähtäri
      28
      1061
    Aihe