Archive for the ‘MS Windows’ Category

Scripting the Unscriptable

Wednesday, October 11th, 2006

I’ve been looking for different ways to send keystrokes, mouse movements and clicks to GUI applications. Under Windows, this is straight forward with AutoIt. The BASIC-like language allows you to read files, start applications, send keystrokes move the mouse etc. A nice feature is to wait for certain dialogs, for example:

; wait for tightvnc window
WinWaitActive("New TightVNC Connection")
; send hostname and port number
Send($hostname & ":" & $displaynumber)

This makes sure that the keystrokes actually end up in the right window. Mouse coordinates can be specified relative to the application window. Using these features allows you to write ‘reasonably’ robust code. But don’t expect your AutoIt script to run flawlessly on other PC’s. There are a lot of dependencies, like dialogs that look different in another version. Internationalization might cause the window title to read “Nieuwe TightVNC Verbinding” (Dutch) and the above code snippet will fail. Even user preferences like font sizes, window themes and screen resolution might result in unexpected behavior.

Anyway, it’s just fun to figure out which sequences to send to an application and let it process a batch of documents!
Ok, this works pretty nice under windows. But what about my favorite platform?
(more…)

One finger melody

Thursday, May 11th, 2006

Enjoy the silence after tapping this sequence on your keyboard (Windows only):

Shift
Shift
Shift
Shift
Shift
Enter
Alt
Ctrl
Del
S
Enter

Tightvnc viewer startup script

Wednesday, April 26th, 2006

Today, I wrote a little AutoIt script that connects to a vnc server when starting my windows computer. If you are interested, here you are!

Exposé voor Windows

Monday, December 12th, 2005

Alleen voor Firefox gebruikers dan… en ook voor Linux en Mac OS X. Heb je al Firefox 1.5? Werk je regelmatig met tabs? dan moet je deze extensie beslist installeren. Na de installatie krijg je een knopje links onderin de status balk. Hiermee kun je alle tabs als miniaturen naast elkaar te zien krijgen…. dus net als bij Exposé.
Nou ja, het haalt het er nog niet bij. Het is niet geanimeerd en het is jammer dat je niet terug keert naar je huidige tab als je nog een keer op de knop drukt.

Short-cut: Ctrl + Shift + x, op de Mac is het Appeltje + Shift + x.

Trouwens, er is iets als Exposé voor Windows: IEx, WinPLOSION, Entbloess en Windows Exposer… ik ga ze niet eens proberen ;-)

Seriele Terminal voor Windows

Wednesday, November 16th, 2005

Voor een aantal embedded projectjes gebruik ik Hyperterminal om met de seriele poort te praten. HT is echt een draak van een programma. Elke keer begint het weer om telefoonnummers te vragen terwijl je uiteindelijk gewoon wilt aangeven dat je met bv. COM1 wilt praten. Er lijken niet echt veel goede gratis/open source alternatieven te vinden zijn.

Vandaag weer een poging ondernomen. Er blijkt een PuTTY clone te zijn, genaamd TuTTY, met support voor seriele communicatie. Misschien wordt het ooit standaard in PuTTY opgenomen, maar dat is een kwestie van afwachten (het staat wel in de wish-list).
Nog eleganter is het gebruik van PuTTY in combinatie met tsb. Tsb is een dos programma’tje (GPL) dat een schakel vormt tussen de seriele poort en een TCP poort. Als tsb opgestart is, kun je met PuTTY contact leggen met localhost en de betreffende poort die je met tsb hebt opgegeven.

Heel fijn om uiteindelijk toch weer gewoon met PuTTY te kunnen werken!!
Onder linux gebruik ik overigens gtkterm, itt HT zeer makkelijk te gebruiken!

Administrator wachtwoord vergeten?

Tuesday, April 12th, 2005

Dan reset je ‘m toch gewoon?

Windows scripten met AutoIT

Sunday, April 10th, 2005

AutoIT is een fantastisch programma waarmee vrijwel elke handeling onder Windows te automatiseren is. Met eenvoudige commando’s kun je programma’s opstarten en de controle over de muis en het toetsenbord overnemen.
Een must voor iedere luie systeembeheerder. Je kunt vanuit je script GUI objecten aanmaken (zoals knoppen, lijsten en checkboxen) waardoor je script de look en feel van echte applicatie krijgt. Je kunt heel eenvoudig je script converteren naar een stand-alone executable. AutoIT is open source, gratis en het draait onder Windows 95, 98, ME, NT4, 2000, XP en 2003!

Ik heb laatst deze functie geschreven waarmee je makkelijk command-line programmaatjes kan integreren.

Zie ook mijn vncviewer startup script. Het maakt gebruik van de meest voorkomende functies die je nodig hebt om een willekeurig windows programma te scripten.

Screenshots

Sunday, March 27th, 2005

Linux:
Voor het maken van een screenshotje van een applicatievenster inclusief rand:

$ import -frame screenshot.png

Het eerste-de-beste scherm dat je aanklikt wordt opgeslagen in screenshot.png. Zie manpage van import voor meer opties.

Mac OS X: Deze toetscombinaties moet je maar net even weten…. Voor het volledige scherm doe je “Appeltje + Shift + 3″. Voor een selectie “Appeltje + Shift + 4″. In beide gevallen wordt er automatisch een PDFje op je desktop aangemaakt. Ook kun je Appeltje + Shift + 4 + spatie doen. Je muis pijltje verandert in een camera waarmee je een scherm kunt selekteren. Als je klikt wordt er een screenshot van alleen dat scherm gemaakt!

Windows: Hier kun je de “Alt + Print Screen” toetscombinatie gebruiken. Een bitmap-afbeelding van het actieve venster wordt naar het klembord gekopieerd. Plakken kan dan vervolgens in elk programma die iets met plaatjes overweg kan: Paint, Word, Photoshop, etc.
Alleen de PrintScreen-knop indrukken stuurt het gehele scherm naar het klembord.

Screenshotje

Windows op slot

Sunday, March 27th, 2005

Met de volgende code in een shortcut of quicklaunch icoontje, kun je direkt je Windows sessie op slot doen:

rundll32.exe user32.dll,LockWorkStation

Dit kun je ook in de ‘taskmanager’ stoppen om bijvoorbeeld je computer op slot te doen op het moment dat je deze 15 minuten niet meer gebruikt hebt.

Windows2k tab completion

Saturday, March 19th, 2005

Om tab completion aan te zetten voor de commandline van Windows2000 of WindowsXP, start regedit en wijzig de volgende key:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor] "PathCompletionChar"=dword:00000009

‘9′ staat voor de tab toets. Start het ‘dos’ venster opnieuw en je zult zien dat de tab toets bijna hetzelfde werkt zoals je het van bash gewend bent.