. Skip to main content

Daniel Nix

Daniel Nix

Powershell: get current user keyboard settings

2 min read

Powershell script to get the last user logged in and the keyboard preload setting (Win7)

Import-Module ActiveDirectory
Import-Module PSRemoteRegistry

$path="OU=Workstations,OU=TREE,DC=my,DC=domain,DC=forest,DC=com"
$computers = Get-ADComputer -Filter 'ObjectClass -eq "Computer"'  -searchbase $path -searchscope 2 | Select -Expand DNSHostName

forEach ($computer in $computers){
    if (Test-Connection -computername $computer -Quiet) {
        $logonname = Get-RegValue -ComputerName $computer -Hive LocalMachine  -Key "SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI" -Value "LastLoggedOnSAMUser"
        $preload =   Get-RegValue -ComputerName $computer -Hive CurrentUser  -Key "Keyboard Layout\Preload" -Value 1
        $sub =       Get-RegValue -ComputerName $computer -Hive CurrentUser -Key "Keyboard Layout\Substitutes" -Value $preload.Data
        $reg =       Get-RegValue -ComputerName $computer -Hive LocalMachine -Key "SYSTEM\ControlSet001\Control\Keyboard Layouts\$($sub.Data)" -Value "layout text"

        $result = $computer + ';' + $logonname.Data + ';' + $reg.Data
        Write-Host $result
        $result | Add-Content 'UserKbd.csv'

    }
}

Make sure the file UsersKbd.csv exists (or create at beginning).

Needs module PSRemoteRegistry.

It takes the computer name from your AD, checks that's online. Takes the registry key for the last logged on user.

For the keyboard, it takes the keyboard code of the logon screen, takes the substitute and gets the human readable layout.

Daniel Nix

Pokemon Go walking distance

1 min read

Il semble qu'il faut marcher beaucoup pour arriver à éclore un oeufs dans Pokèmon Go. J'ai fait un petit test, j'ai pris ma montre TomTom Runner en freestyle et j'ai fait le tour du pâté de maison.

Montre TomTom 490m

TomTomRunner

Départ avec PGo:

Arrivée :

Arrivée PGO

 

le verdict est consternant : 490m en réel ne sont que comptés 140m... ça fait long les 5km pour incuber son oeuf...

Daniel Nix

test ratingstars

1 min read

seems it doesn't work on status

Daniel Nix

Daniel Nix

Daniel Nix

Using the Known API

2 min read

I was looking for a way to import my twitter favourites. First I was thinking about writing a plugin that checks the twitter api for new likes, but no one ain't no time for that.

So reading about IFTTT again, I wanted to give a try as the maker channel seems to fit as it let's you make web request to a publicly accessible URL. No luck with the Known API, it needs some custom http headers.

So I wrote a quick and dirty request forwarder : KnownApiForward. It takes the request from ifttt and passes it to the known api.

Thanks to Marcus Povey who gave me some good tips on how to start with writing an api for Known, could quickly put some code together.

The Known documentation is still a bit poor and one has to get the pieces together if you're not familiar with it.

What you need is :

your endpoint (your_known/action/edit in my case for a status https://nxd4n.nixekinder.be/status/edit)

your api key (account settings -> tools).

Calculate the token :

$token = base64_encode(hash_hmac('sha256',$known['action'] ,$known['known_api_key'] , true));

 

 Headers for the curl call :

$known['headers'] =   array('Accept: application/json',
                                     'X-KNOWN-USERNAME: ' . $known['username'],
                                     'X-KNOWN-SIGNATURE: ' .$known['token'],
                                     'Content-Type: application/json', 
                                     'Content-Length: ' . strlen($known['status']));



 And the curl options :

 

curl_setopt($ch, CURLOPT_COOKIEJAR, "/tmp/cookiefile");
curl_setopt($ch, CURLOPT_URL,"YOUR_KNOWN_SITE_URL".$known['action']);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $known['status']);
curl_setopt($ch, CURLOPT_HTTPHEADER, $known['headers']); 

In IFTT, create a recipe with the Maker Channel. Provide the script's url and put a json formatted text in the body field :

iftt maker settings

Daniel Nix

I liked something on Facebook

1 min read

 

Ich möchte bitte in so einen Zug einsteigen... :-)

Posté par Tollabea sur jeudi 11 février 2016

Daniel Nix

#instagram embed test

1 min read

Daniel Nix

New Known Plugin : Ratings

1 min read

I just have uploaded my new plugin for my Known site : https://github.com/danito/idnoRating/.

It adds up to 5 stars to any article by simply adding a hashtag ratingstarsX where X is a number from 0 to 5.

It's based (and the code is mostly copied) on the work of Felix Schwenzel (@diplix) who recently has added this to his posts.

There's another plugin which adds reviews and ratings to Known, but this plugin creates an entity for its own, and is more designed for product reviews.

The hashtag ratingstars will be hidden so you wont see it on any post.

Daniel Nix

@oalleyFr : Une carte interactive qui montre la superficie du temps de parcour d'un point donné

1 min read

Ca fait quelques temps déjà que je rève d'avoir ce genre d'outil: connaitre la zone non pas par rapport à une distance mais par rapport au temps qu'il faut pour s'y rendre. Imaginez que vous voulez déménager mais que vous désirez rester à 30 minutes en transport en commun de votre lieu de travail ou de 20 minutes à pied de l'école de votre enfant.

C'est ce que fait http://www.oalley.fr/

Vous introduisez une addresse et choisissez le mode de transport et le temps maximum. On peut afficher plusieurs addresses pour trouvez la zone qui se trouve à égalité de temps.

via @korben

Daniel Nix

Daniel Nix

Canon separator page

1 min read

so if you need a separator page for your print jobs on Canon ADV copiers. For my copiers pcl.sep did do the job.

create a share \\share\sepFiles* where your .sep file will be placed.

Open the driver settings -> advanced ->separator page

Browse to the file.

Here an example file :

\
\N
\H1B\L&l5H
\H1B\L&l2S
\H1B\L&a2G
\H1B\L&l1T\0
\H1B\L(s4B
\U\LJob : \I
\U\LOwner: \N
\U\LDate: \D
\U\LTime: \T
\E

This will print

username
Day date
hh:mm:ss
file.name

via

More info about pcl.sep language on MS

 

* this sepFiles folder is mandatory if you place this file outside c:\windows\system32

Daniel Nix

Un titre @lemonde simplifié pour les lecteurs venant de FB

1 min read

Je viens de croiser un drôle de constat sur mon fil FB. Si un lecteur du Monde vient de FB, le titre change

Lien partagé sur FB : http://bigbrowser.blog.lemonde.fr/2015/12/02/faux-message-pre-electoral-du-fn-larroseur-arrose/?utm_...

Si on ouvre l'url néttoyé http://bigbrowser.blog.lemonde.fr/2015/12/02/faux-message-pre-electoral-du-fn-larroseur-arrose/ le titre change

Titres du LeMonde

 

Daniel Nix

Neuer Post mit ümläute

1 min read

2. Teil Morgen mit accents

Daniel Nix

Daniel Nix

Daniel Nix

#techniktagebuch - Opendeal>ebay - 1999

2 min read

(nach dem Urlaub 150 neue #Techniktagebuch Einträge - Zeit mal selber was aufzuschreiben)

Ich habe noch ein T-Shirt von Opendeal.be (ein Werbegeschenk wegen einer Cooperation mit der Firma bei der ich arbeitete). Die wurden dann ein paar Monate später von iBazar aufgekauft das dann später von ebay übernommen wurde. Das wars dann mit den Onlineauktionen. Das tolle war doch, das wenn in den letzten fünf Minuten vor Auktionsschluss noch ein Angebot reinkam, die Auktion wieder für 5 Minuten verlängert wurde. Das war spannend und man gab meistens dann doch mehr aus als man zuerst vorhatte. Seit Ebay das gekillt hat, ist das mit der Auktion nicht mehr so rentabel für den privaten Verkäufer. Jetzt gilt nur noch wer das letzte Angebot vor Schluss macht, da geht es zu wie bei den Tradern, da zählt jede Milisekunde.

Ich selber habe deshalb nichts mehr dort verkauft, ich verschenke meinen Kram lieber (oder horte es solange in Kisten bis es bei Umzügen von alleine verschwindet), da ist mir der Umstand zu gross als für eine alte Graphikkarte noch ein paar Euros (oder BEF damals) zu bekommen.

Daniel Nix

Aujourd'hui j'ai montré à mon fils comment fonctionne la programmation

1 min read

Voici notre petit programme en php:

echo "<pre>";
$boite1 = 345;
$boite2 = 199;
$resultat = $boite1 + $boite2;
echo "Notre calcul: ".$boite1." + ".$boite2." = ".$resultat;
echo '</pre>';

 

Daniel Nix

Daniel Nix

Le Soir : Piétonnier: La mue de Bruxelles… et des Bruxellois

1 min read

Piétonnier: La mue de Bruxelles… et des Bruxellois | Cartes blanches - lesoir.be http://nixis.me/1m

pour la première fois c’est aux automobilistes de s’adapter. 

Daniel Nix

Daniel Nix

Daniel Nix

do 2 YT go embeded?

1 min read

How to always win at Dots and Boxes - Numberphile

https://youtu.be/KboGyIilP6k

Winning at Rock Paper Scissors - Numberphile

https://youtu.be/rudzYPHuewc

Daniel Nix