Toon posts:

Macro draaien zonder scherm

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Op mijn Intel NUC wil ik graag 's nachts een Macro draaien.
Windows 10 is geinstalleerd.
HDMI scherm (TV) hangt er aan (via receiver), maar dat staat 's nachts uit.

Procedure:
- BIOS wakeup/boot om 01:00
- Macro tooling heeft een eigen scheduler die om 01:05 het script afvuurt
- Windows Scheduler zet om 01:10 het systeem weer uit.

Wat doet het script (alleen keyboard input)
Start browser
Laad een site
Via "TAB" een aantal velden overslaan, Enter geven op een bepaald veld.
En dat wordt een aantal keer herhaald.

Uit de logging haal ik dat:
- Systeem boot op de gewenste tijd
- Script wordt gedraaid door de tooling
- Browser wordt niet gestart.
- Systeem sluit af.

Nu zou je zeggen, foutje in het script.
Echter wanneer ik met scherm aan, handmatig het script afvuur, werkt het prima.
Ook wanneer ik het scherm aan laat staan en andere tijden instel, werkt het gewoon goed, ik zie dan visueel alles werken zoals het hoort.

Zonder dat het scherm aan gaat, werkt het simpelweg niet.
De vraag is nu waarom? En hoe kan ik dat oplossen?
Scherm aan laten staan kan technisch gezien, maar vind ik zonde van de stroom.

Drivers zijn up to date, etc.
Wie heeft een idee in welke hoe ik het zou kunnen zoeken?

Alle reacties


Acties:
  • 0 Henk 'm!

  • Rensjuh
  • Registratie: Juli 2007
  • Laatst online: 06:46
Kun je niet lokaal een .HTML pagina maken met het externe formulier?
Als je dan daar in de waardes inzet als standaardwaarde met value hoef je alleen het formulier te posten naar de externe pagina.
Dan zou je dus de pagina moeten openen en laat je met bijv. Javascript met de "onload" in body de pagina posten?

https://stackoverflow.com...6/html-post-automatically

Hoef je geen moeilijk script te maken, maar alleen de HTML pagina aan te roepen.

PV Output


Acties:
  • 0 Henk 'm!

  • JukeboxBill
  • Registratie: Juni 2003
  • Laatst online: 11:19
Heb je het al geprobeerd met een gewone computer monitor? Een TV aan de PC reageert soms anders dan een monitor, heb ik al eens gemerkt.

Een slimme vos is nooit te oud om een nieuwe streek te leren


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Rensjuh schreef op donderdag 30 januari 2020 @ 09:59:
Kun je niet lokaal een .HTML pagina maken met het externe formulier?
Als je dan daar in de waardes inzet als standaardwaarde met value hoef je alleen het formulier te posten naar de externe pagina.
Dan zou je dus de pagina moeten openen en laat je met bijv. Javascript met de "onload" in body de pagina posten?

https://stackoverflow.com...6/html-post-automatically

Hoef je geen moeilijk script te maken, maar alleen de HTML pagina aan te roepen.
Dan moet nog steeds de browser gestart worden toch?
Dat gebeurd niet als het scherm uit staat om een of andere reden.
JukeboxBill schreef op donderdag 30 januari 2020 @ 10:25:
Heb je het al geprobeerd met een gewone computer monitor? Een TV aan de PC reageert soms anders dan een monitor, heb ik al eens gemerkt.
Nee, die is niet beschikbaar.
En al was die beschikbaar, met scherm werkt het prima. Het gaat er juist om dat als het scherm uit is het e.a. niet doorloopt.

[ Voor 22% gewijzigd door Verwijderd op 30-01-2020 11:47 ]


Acties:
  • 0 Henk 'm!

  • JukeboxBill
  • Registratie: Juni 2003
  • Laatst online: 11:19
Verwijderd schreef op donderdag 30 januari 2020 @ 11:47:
[...]

Dan moet nog steeds de browser gestart worden toch?
Dat gebeurd niet als het scherm uit staat om een of andere reden.


[...]

Nee, die is niet beschikbaar.
En al was die beschikbaar, met scherm werkt het prima. Het gaat er juist om dat als het scherm uit is het e.a. niet doorloopt.
Als je geen monitor hebt, dan houdt het op.
Dat het werkt met scherm, had ik wel begrepen. Ik heb het idee dat een TV helemaal uit gaat en een monitor, ook al is hij uit, nog een bepaalde verbinding houdt met de PC.

Een slimme vos is nooit te oud om een nieuwe streek te leren


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
JukeboxBill schreef op donderdag 30 januari 2020 @ 11:52:
[...]


Als je geen monitor hebt, dan houdt het op.
Dat het werkt met scherm, had ik wel begrepen. Ik heb het idee dat een TV helemaal uit gaat en een monitor, ook al is hij uit, nog een bepaalde verbinding houdt met de PC.
Het systeem zit zelfs niet direct op de TV, maar via de Reicever.
De Receiver zit weer via een andere HDMI (ARC) op de TV aangesloten.

Maar goed, er zijn genoeg systemen 'headless' (denk bijv. aan servers) die ook prima taken kunnen uitvoeren zonder dat er een scherm is aangesloten. Derhalve blijf ik erbij dat er iets uitgevoerd moet kunnen worden zonder dat er een display aan hangt.

Acties:
  • 0 Henk 'm!

  • JukeboxBill
  • Registratie: Juni 2003
  • Laatst online: 11:19
Een headless server zit anders in elkaar. Daar draait in principe geen grafische uitvoer op via een monitor. Als je daar iets wil doen, dan log je in vanaf een andere PC.
En als je er een monitor aan kan hangen, dan kan je hooguit via een commandline-achtig iets communiceren.

Een slimme vos is nooit te oud om een nieuwe streek te leren


Acties:
  • 0 Henk 'm!

  • Coffeemonster
  • Registratie: Juli 2000
  • Laatst online: 08-10 12:56
Als het systeem 's-nachts uit staat en je start het op, dan ben je niet automatisch ingelogd. Ik weet niet of je wel een browser kunt starten, een html-pagina opvragen en dan een paar toetscommando's geven als je niet bent ingelogd.

Als alternatief zou je het script kunnen starten met wget, die kun je gewoon vanaf de command prompt draaien en heeft geen Windows-interface nodig. Je moet dan wel kijken welke http-request de pagina maakt als je script een enter geeft (zal wel een POST zijn), en die request laten uitvoeren door wget. Misschien dat dat wel lukt?

[ Voor 3% gewijzigd door Coffeemonster op 30-01-2020 16:12 ]

Look for something long enough and you will find it; look for something without understanding, and it will find you.
A normal day at the stock exchange


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Het systeem logt wel vanzelf in, zoals aangegeven in de TS.
Hoe? Zie: https://www.intowindows.c...ally-login-in-windows-10/

Dat dit goed gaat haal ik ook terug uit de eventlog (en ook wanneer ik met scherm het systeem start, na de boot heb ik gewoon mijn desktop voor me)

Helaas werkt WGET niet er zitten wat java componenten in de pagina waarop enters gegeven moeten worden. Dat gaat niet via een POST.
Had dat het geval geweest, dan ik via mijn Pi gedaan ipv een GUI based Macro op mijn windows systeem.

Acties:
  • 0 Henk 'm!

  • Coffeemonster
  • Registratie: Juli 2000
  • Laatst online: 08-10 12:56
Ik had gemist dat bij opstarten automatisch werd ingelogd. En lastig dat de javacomponenten in de weg zitten. Ik neem aan dat je het ook al eens met een andere browser hebt geprobeerd?

En je zou nog kunnen proberen om de drivers van de display adapter te updaten (automatisch, via internet drivers laten zoeken). Wij hadden hier ooit een probleem met Google Remote Desktop die prima werkte totdat er geen monitor meer aan de computer hing, want dan kreeg je een blank scherm als je inlogde via Remote Desktop. Een update van de drivers van de display adapter loste dat op. Heel misschien dat dit jou ook soelaas biedt?
Edit: ik zie dat de drivers up-to-date zijn. Never mind. :)

[ Voor 4% gewijzigd door Coffeemonster op 30-01-2020 16:50 ]

Look for something long enough and you will find it; look for something without understanding, and it will find you.
A normal day at the stock exchange


Acties:
  • 0 Henk 'm!

Verwijderd

Zonder dat het scherm aan gaat, werkt het simpelweg niet.
De vraag is nu waarom? En hoe kan ik dat oplossen?

Dit komt omdat er dan geen desktop is waarop de browser gerenderd zou moeten worden. Zorg ervoor dat de monitor wel aan gaat, of maak gebruik van Chromium (bijvoorbeeld Puppeteer op NodeJS, of Selenium) om headless het formulier in te vullen.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Verwijderd schreef op donderdag 30 januari 2020 @ 16:50:
Zonder dat het scherm aan gaat, werkt het simpelweg niet.
De vraag is nu waarom? En hoe kan ik dat oplossen?

Dit komt omdat er dan geen desktop is waarop de browser gerenderd zou moeten worden. Zorg ervoor dat de monitor wel aan gaat, of maak gebruik van Chromium (bijvoorbeeld Puppeteer op NodeJS, of Selenium) om headless het formulier in te vullen.
Even het scherm aanzetten direct na de boot en voordat de macro gaat draaien, werkt vervolgens prima als het scherm uit is... het lijkt er dus echt op dat Windows 10 per se een extern scherm 1x nodig heeft om de desktop te starten,
De browser die ik gebruik is Edge op basis van Chrome.
Denk dat je met Puppeteer / Selenium doelt op de Pi? Ik heb geen GUI draaien op de Pi.
Liever laat ik dat ook zo, er draait al genoeg ander spul op wat de Pi al belast. Vandaar de poging om het via de NUC te doen.

Je moet toch Windows 10 op een of andere manier voor de gek kunnen houden dat het scherm aan staat?
Heb ooit eerder eens wat met Macro's gedaan in Windows 7 een paar jaar terug, en toen werkte het prima.
It's not a bug... it's a feature. Maar ik wil die feature dus niet. ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Je kunt met python of javascript oid gebruik maken van chromium om formulieren in te vullen zonder monitor. Heb dit zelf wel eens gebruikt icm pyvirtualdisplay (alleen voor linux) om screenshots te maken op een server zonder monitor.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Klinkt interessant, maar heb daar denk ik wel een goede tutorial bij nodig.
Ben meer van Windows en Poweshell dan van Linux en python/JavaScript.

Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
Als het zonder beeldscherm moet draaien kun je dan niet "gewoon" een HDMI dummy-plug gebruiken?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
sypie schreef op donderdag 30 januari 2020 @ 20:55:
Als het zonder beeldscherm moet draaien kun je dan niet "gewoon" een HDMI dummy-plug gebruiken?
Kan, maar als ik dan wel het systeem overdag wil gebruiken als mediacenter moet ik elke keer die plug gaan wisselen.
Tenzij zoiets ook voor MiniDP bestaat? Nuc heeft HDMI en MiniDP (of wellicht zelfs via Thunderbolt).

[ Voor 5% gewijzigd door Verwijderd op 30-01-2020 21:58 ]


Acties:
  • 0 Henk 'm!

  • sypie
  • Registratie: Oktober 2000
  • Niet online
@Verwijderd Zeker zijn ze er ook voor Mini Display Port: https://www.amazon.com/FR...r-3840x2160/dp/B0758675CJ

Acties:
  • 0 Henk 'm!

Verwijderd

Sta er dan wel bij stil dat het energieverbruik zal oplopen. Een form submitten mbv javascript of python is erg simpel tegenwoordig.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Verwijderd schreef op vrijdag 31 januari 2020 @ 14:24:
Sta er dan wel bij stil dat het energieverbruik zal oplopen. Een form submitten mbv javascript of python is erg simpel tegenwoordig.
Voor die 10 min dat de NUC aan staat, zal het wel meevallen denk ik?
Heb jij een zetje in de goede richting waar ik me kan inlezen m.b.t. javascript/python? Ik heb er echt 0 ervaring mee, is jouw statement dan nog steeds van toepassing? ;)

Acties:
  • 0 Henk 'm!

  • Killah_Priest
  • Registratie: Augustus 2001
  • Laatst online: 09-10 09:49
Verwijderd schreef op donderdag 30 januari 2020 @ 20:23:
Klinkt interessant, maar heb daar denk ik wel een goede tutorial bij nodig.
Ben meer van Windows en Poweshell dan van Linux en python/JavaScript.
Met Powershell kun je ook gewoon webrequests doen.
Dmv een tool zoals Fiddler kun je erg makkelijk zien welke data er gepost wordt bij een request, vervolgens is dit vaak erg simpel om na te bouwen met Invoke-WebRequest.

(laatst nog een zooi scripts gebouwd om data uit ongedocumenteerde Office365 APIs te trekken waarbij je ook dynamische data die via Javascript gevoerd wordt meeneemt).
Pagina: 1