Skip to content

Neue Qt Trainings online

Es ist mal wieder an der Zeit für ein bisschen Eigenwerbung. Ich werde ab dem 2. Juni 2011 selbstständig mein Fachwissen zum Einsatz bringen, aber natürlich auch weiterhin meine Trainings anbieten. Die nächsten Termine für Qt  sind:

  • Bei der opensource school (hier bitte den Partnercode: PAJU38 angeben)
  • Bei der HILF!GmbH
    • Qt Workshop – 11. bis 14. Juli 2011, 8. bis 11. August 2011, 13. bis 16. September 2011, 24. bis 27. Oktober 2011 und 5. bis 8. Dezember 2011
    • Qt Deeply Embedded – 30. Mai bis 1. Juni 2011

Post to Twitter Post to Facebook Post to LinkedIn

Dictionaries und das liebe Remoting

Bei einem aktuellen Projekt musste ich im Zuge der Kompatibilität auf WCF verzichten und noch .NET Remoting nutzen. Dabei ist mir ein weiteres Problem aufgefallen: Die Übertragung von Dictionaries mit string als Key-Type von einer Mono Anwendung zu einer Microsoft .NET Anwendung schlägt wegen eines merkwürdigen Typenfehlers fehl.

Bereits vor einiger Zeit wurde dazu auch schon ein Bugreport bei Novell eingereicht, der allerdings mangels .NET 1.0 (wer setzt das eigentlich noch ein?) Kompatiblität wohl nicht behoben wird. Die Ursache ist ein proprietäres Verfahren das von Microsoft intern genutzt wird um die Gleichheit von Strings zu überprüfen.

Es musste natürlich trotzdem eine Lösung her – die heißt IEqualityComparer:

[Serializable]
class Comparer : IEqualityComparer<string>
{
    #region IEqualityComparer[System.String] implementation
    public bool Equals (string x, string y)
    {
        return x.Equals(y);
    }

    public int GetHashCode (string obj)
    {
        return obj.GetHashCode();
    }
    #endregion
}
...
var d = new Dictionary<string, double>(new Comparer());

Ich hatte vor dieser Lösung verschiedene andere Ansätze versucht, aber dieser ist nicht nur der eleganteste, sondern merkwürdigerweise auch der schnellste – sogar schneller als die Standardimplementierung des string-Dictionary.

Alle int/string/enum Dictionaries, die per Remoting übertragen werden sollen bekommen einfach ein eigenes Comparer Objekt im Konstruktor zugewiesen und der Mono/Microsoft .NET Kompatiblität steht nichts mehr im Weg.

Post to Twitter Post to Facebook Post to LinkedIn

Tagged , , , ,

wpabaln.exe frisst Leistung

Bei der Vorstellung eines Prototyp-Systems beim Kunden hatten Sven und ich ein kleines Problem: Die Anwendung wpabaln.exe verbrauchte 99% der Systemleistung auf unserem frisch gebauten Windows Embedded Standard 2009. Die Kenner des Systems wissen, dass dieser Dienst für die Darstellung der Ballonmeldungen in der Taskleiste verantwortlich ist.

Eine kleine Besonderheit an dem System hat es allerdings wohl aus dem Tritt gebracht: Das System hatte seit fast zwei Monaten noch den Eval-Key, ein funktionierender Produktkey macht bei einem Prototypen schließlich wenig Sinn.

Um dem Kunden ein benutzbares System bieten zu können musste natürlich eine Lösung her die sich recht schnell fand:

  1. regedit starten
  2. Den folgenden Key suchen: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WPAEvents
  3. Den String OOBETimer auf den folgenden Wert setzen: FF D5 71 D6 8B 6A 8D 6F D5 33 93 FD
  4. Rechtsklick auf den Punkt WPAEvents -> Permissions
  5. Den Benutzer System auswählen und alle Rechte auf “Deny” setzen.
  6. Neustarten

Für mich sieht das so aus als würde man irgendeinen Key eintragen und das schlimmste: Dem System den Zugriff auf den eigenen Key verweigern. Eigentlich sollte das System sich dann meiner Meinung nach selbst vernichten, aber naja … es ist ja schließlich Windows.

Ich wünsche niemanden diesen Fehler (war eine ordentliche Such- und Filterei da zu diesem Dienst auch viele unnütze Ergebnisse bei Google geliefert werden), aber falls er doch auftritt hoffe ich damit geholfen zu haben.

Post to Twitter Post to Facebook Post to LinkedIn

Tagged , , , ,

Einsatz mit Kuriositäten

Zusammen mit Markus bin ich aktuell in Rastatt um bei einem Kunden den Conformity Explorer zu installieren. Doch schon die Fahrt und das Hotelzimmer sind die ersten Kuriositäten. Mal sehen was die Tage bringen …

Auf einem Raststättenklo irgendwo auf dem Weg in Richtung Karlsruhe

Auf einem Raststättenklo irgendwo auf dem Weg in Richtung Karlsruhe

Empfangbares WLAN im Hotel. Ein geübter Blick lässt erkennen, dass das WLAN ungesichert ist. Sicher eine tolle Werbung für ein Bordell ...

Empfangbares WLAN im Hotel. Ein geübter Blick lässt erkennen, dass das WLAN ungesichert ist. Sicher eine tolle Werbung für ein Bordell ...

Post to Twitter Post to Facebook Post to LinkedIn

Tagged , , , ,

Schulungsplan 2011 online!

Der neue Kursplan 2011 der HILF!GmbH ist nun online!

Gleichzeitig darf ich eine Aktion für den Start ins neue Jahr ankündigen: Wenn ihr den Aktionscode “PICA” bei der Anmeldung für eine Schulung im Januar 2011 angebt, erhaltet ihr 10% Rabatt auf die Kursgebühr.

Post to Twitter Post to Facebook Post to LinkedIn

Tagged , , , ,

Neues Design

Ich habe mir jetzt einmal die Arbeit gemacht und habe etwas an dem WordPresstemplate gebastelt um die Seite etwas ansprechender zu machen. Mal sehen wie ich Zeit finde, evtl. gibt es heute auch noch neues von der Entwicklerfront ;)

Post to Twitter Post to Facebook Post to LinkedIn

[Update] .NET Linguist

Es gibt ein kleines Update bei meinem aktuellen Hobby-Projekt, dem .NET Linguist – die Internationalisierungslösung im Stil von Qt.

  • Aufgrund erheblicher Performanceverbesserungen bei LINQ ist die Projektstruktur auf das .NET 4.0 Framework eingestellt. Der Code ist weiterhin abwärtskompatibel zu 3.0, aber nur im 4.0 Framework ist die LINQ Abfrage schneller als der klassische Weg über eine foreach() Schleife.
  • Den Aufruf der Übersetzungsproperties konnte ich etwas abkürzen, dadurch wird ein Methodenaufruf gespart. Die verbesserte Performance ist erst ab mehreren tausend Strings/Objekten spürbar.

Ihr könnt das Projekt direkt mit git von dieser Adresse klonen und daran arbeiten: git@github.com:picaschaf/DotNetLinguist.git

Hier gehts zum Projekt auf GitHub

Post to Twitter Post to Facebook Post to LinkedIn

Tagged , , , ,

Qt Developer Days 2010 in München

Ich bin dieses Jahr auf den Qt Developer Days in München anzutreffen! Wenn jemand Lust hat sich mit mir auf etwas Fachsimpelei zu treffen, schreibt mir einfach eine kurze E-Mail (picaschaf (ät) me (punkt) com).

Wer noch nicht angemeldet ist, sollte sich schnell noch ein Ticket sichern!

Qt Developer Days 2010 in München

Post to Twitter Post to Facebook Post to LinkedIn

Standheizung aktivieren beim V10 – Die Anleitung

Hallo ihr Lieben!

Nach gut einem Jahr ist der Kampf endlich gewonnen und das Mosaik zusammengelegt: Die Standheizung, die im V10 als ordinärer Zuheizer ihr Dasein fristet, ist nun eine echte Standheizung mit allem Drum und Dran (außer der Fernbedienung, die brauche ich nicht)!

Um anderen “Willigen” die Arbeit zu erleichtern habe ich eine Zusammenfassung geschrieben. Mit der sollte es keine 10 Minuten dauern und jeder mit einem VCDS in der Hand und einem V10 im Herzen hat eine Standheizung.

Bei Fragen oder Hilfegesuchen, einfach kurz eine Nachricht schreiben!

Anleitung Standheizung Phaeton V10 (PDF)

Post to Twitter Post to Facebook Post to LinkedIn

Tagged , , ,

Rückenschmerzen adé mit Andullation

[Trigami-Anzeige]

Die hhp Massageliege die derzeit einzige Massageliege mit Andullation, also eine besondere Form der schwingenden Massage. Zusätzlich verfügt sie über mehrere Infrarotelemente die eine Tiefenwärme erzeugen und somit Verspannungen lösen und Schmerzen lindern. Auch vorbeugend lässt sich diese Massageliege einsetzen.

Selbst der Deutsche Olympische Sportbundsetzt die hhp Massageliege ein was ein weiteres Qualitätsmerkmal darstellen kann. Definitiv ein Qualitätsmerkmal ist die Tatsache, dass die hhp Massageliege in Deutschland entwickelt und hergestellt wird. Aber auch für den heimischen Einsatz um bei Rückenschmerzen wieder schmerzfrei zu werden ist diese Massageliege perfekt geeignet.

Dabei bietet hhp einen vorbildhaften Rundumservice zum Beispiel mit kostenloser Vorführung zu Hause und 0% Finanzierung beim Kauf. hhp betreibt zu seiner Massageliege außerdem eine eigene Facebook Seite.

Persönliches Angebot & Infos anfordern

Post to Twitter Post to Facebook Post to LinkedIn

Tagged , , , ,