Creative Commons Lizenzvertrag
Posts mit dem Label Software werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Software werden angezeigt. Alle Posts anzeigen

Donnerstag, 19. April 2012

Google Currents ist noch nicht ganz ausgereift.

Dieser Tage, mit dem Erscheinen von Google Currents in Deutschland habe ich gleichmal für Inside Weblin die entsprechenden Inhalte veröffentlicht. Dabei fiel mir auf das es noch nicht ganz ausgereift ist. Folgende Probleme und Schwächen treten auf:



Freitag, 15. Januar 2010

RadioPlayer jetzt mit Plugins

Ich hatte erst über meinen Radio-Player geschrieben. Ich habe diesen nun so erweitert, dass er auch Tweets an Twitter sendet. Da es nun viele Social Networks mit API gibt, habe ich den Radio Player mit einer Plugin-Schnittstelle versehen. Dadurch ist es möglich das man sich den Player so anpassen kann wie man möchte. Ein Beispiel-Plugin, inclusive Source wird mit installiert. Die fertig kompilierten DLL's einfach nur ins Plugin-Verzeichnis kopieren und beim nächsten Start werden die Plugins automatisch erkannt und eingebunden. Alles andere seht ihr im Quelltext des Beispiels.
Das ganze findet ihr wie immer auf der Downloadseite des Radioplayers.

Dienstag, 12. Januar 2010

Facebook und C#

Ich hatte schon vor längerer Zeit mal einen Radio-Player geschrieben. Dieser benutzt FMODex und benachrichtigt den Windows Live Messenger und mirc über die gespielten Titel. Nun hatte ich die Idee dies auch für Facebook zu realisieren. Ansich recht einfach, dachte ich denn Microsoft bietet ja eine entsprechende Library an. Leider musste ich feststellen das kein einzigstes Beispiel richtig funktionierte bzw. die angegebenen Befehle waren garnicht erst vorhanden. Aber nach einigen Überlegen und Testen fand ich eine entsprechende Lösung:

public void Login()


{



facebookService1.ConnectToFacebook( newList<Facebook.Schema.Enums.ExtendedPermissions>()facebook.Schema.Enums.ExtendedPermissions.status_update });



}


private void SetFacebookText(string text)


{



facebookService1.Api.Users.SetStatus(text);



}


Das ganze findet ihr wie immer auf der Downloadseite des Radioplayers.

Montag, 15. Dezember 2008

UAC und eigene Software

Bei Programmierung unter Vista begegnet einem früher oder später das Problen der UAC, die zugegeben manchmal nervig sein kann. Ich persönlich halte nichts davon sie abzuschalten. Viele Programme kommen nicht mit ihr zurecht. Oftmals aus Unkenntnis der Entwickler. Die Auswirkungen sind unterschiedlich von der User bemerk nichts, bis zu das Programm funktioniert nicht unter Vista. Dies ging mir auch so mit meinen Tools. Wer diese mit der Möglichkeit des Autoupdates installiert hat der hatte unter Vista mit eingeschalteter UAC ein Problem. Die eigentlichen Programme funktionieren, nur der Starter nicht. Ich habe dieses gelöst in dem ich erstmal mit einer manifest-Datei neu kompiliert habe. Eine Installation im Ordner des Users löst dieses Problem auch. Normalerweise sollten Programme aber im Programmordner installiert werden. Durch die Anwendung eines Manifests kann jetzt aber überall installiert werden und es kommt die Abfrage nach den Adminrechten. In nächster Zeit werde ich das ganze so überarbeiten das diese Abfrage nicht mehr notwendig ist und das Programm - mit normalen userrechten sich selbständig updaten kann. Das daie geht zeigen Programme wie Antivir. Aber auch Weblin hat seine Probleme mit der UAC. Dort kommt auch keine Meldung oder zumindestens ein Warnhinweis bei der Installation oder dem Update. Weblin wird unter Vista mit eingeschalteter UAC im Ordner Dokumente (=Eigene Dateien) installiert. Dies liegt an der UAC, die dann mit ihren Virtualisirungs- und Shadowingmethoden greift. Ein Verhalten das zeigt, das Weblin unter Vista noch überarbeitet werden sollte. Übrigens auch für Chrome sollte Weblin nochmals angepasst werden, da die Avatare dort etwas tief stehen so daß die Sterne usw. nicht angezeigt werden. Eine erste Maßnahme ist in den Einstellungen der Haken bei Avatare aus der Statusleiste rauszunehmen. Allerdings werden die Avatare dann bei anderen Browsern nicht korrekt angezeigt.

Dienstag, 30. September 2008

Controller für TwiX

Ein interessantes Programm ist Twix. Es ist ein XMPP-Gateway für Twitter. Es ist sowohl unter Linux (mit Mono) als auch unter Windows(mit Dot.Net Framework) benutzbar. Ich habe das Programm getestet und fand es recht gut. Nur fehlt ihm eine Oberfläche zur besseren Konfiguration. Diese habe ich erstmal für Windows geschrieben und sie ermöglicht die Eingabe der wichtigsten Parameter über ein entsprechendes Fenster, welches sich in der Systray einträgt. Neben der Parametereingabe kann man auch die Logs ansehen. Sind die benötigten Parameter bereits angegeben, wird das eigentliche Programm Twixd automatisch gestartet. Achtung: Die benötigten Passwörter werden noch nicht verschlüsselt gespeichert. Im Download ist der Quelltext mit enthalten. Ansonsten müssen sich alle ausführbaren Dateien im selben Verzeichnis befinden.

Montag, 15. September 2008

Automatische Übersetzung

In einem meiner nächsten Projekte muss Mehrsprachichkeit integriert werden. Das ist ja ansich in Dot.Net kein Problem. Nur das Übersetzen ist mühsam, besonders wenn man die Sprache nicht kennt, oder es wird zu teuer, weil man einen Übersetzer bemühen muß. Da in Programmen ganze Sätze ehr selten sind bietet es sich an diese automatisch übersetzen zu lassen. Programme dazu gibt es viele. Open-Source Projekte sind allerdings immer sehr umständlich bzw. es fehlt die automatische Übersetzung. Aber ich bin dann doch fündig geworden bei Codeproject. Diese Programm (in C#) nutzt den Google-Translator und übersetzt resx-Dateien. Allerdings muss man vorher noch einen Fehler beseitigen, der wahrscheinlich durch Änderungen an der Google-Seite entstanden ist. Eine Korrektur ist dort aber angegeben. Eine Erweiterung der Übersetzungsmöglichkeiten ist auch möglich, da Google inzwischen mehr als die dort angegebenen Varianten bietet. Theoretisch könnte man Programme sogar sich selbst zur Laufzeit übersetzen lassen können. Der Sinn oder Unsinn einer solchen Vorgehensweise sei mal dahingestellt. Aber eine gute Lösung ist dies Programm schon, um schnell zu einer (Vor)übersetzung zu kommen.

Donnerstag, 11. September 2008

Neue Eingabemöglichkeiten

Heute wurde ich auf ein interessantes Video aufmerksam: Wie ich finde eine geniale Möglichkeit zum Schreiben. Das System soll für viele Betriebssysteme und Geräte mit Touchscreen in verschiedenen Sprachen verfügbar werden. Zur Zeit existiert es nur als Beta auf Anfrage. Swype, so der Name des Systems will seine Technik auf mehrere Milliarden Geräte bringen und sie dazu an Hersteller lizenzieren. Swype stammt übrigens u.a. dem Erfinder von T9, das wohl den meisten Handybesitzern ein Begriff sein sollte.

Dienstag, 9. September 2008

Tag des Bugs

Heute ist der Tag des Bugs! Warum? Weil an diesem Tag Frau Konteradmiral Grace Murray Hopper im "Mark II Aiken Relay Calculator" eine Motte fand. Damals gab es ja noch keine Transistoren, geschweige denn Schaltkreise. Die Rechner bestanden noch aus Relais und Röhren und dadurch kam es zu Störungen durch Insekten (englisch Bug). Die Grandma COBOL, wie die Pionierin der Computertechnik auch genannt wird schrieb ins Logbuch: "Das erste mal das wirklich ein Bug gefunden wurde". Den Logbucheintrag inclusive der Motte gibt es noch heute zu sehen. Leider irrte die gute Dame in Bezug auf das Jahr. Von ihr wurde 1945 angegeben, ein Datum welches man fast überall lesen kann, das aber falsch ist, denn es war im Jahr 1947. Unstrittig ist dagegen der 9.September. Allerdings sprach man bereits im 19. Jahrundert von Bugs in Zusammenhang mit kleinen Fehlern in technischen Anlagen. Auch dieser Logbucheintrag läßt erkennen, das es nicht der erste Bug war. Bereits der geniale Erfinder Thomas Alva Edinson schrieb bereits von "Bugs". Damals glaubten viele, das das Rauschen und Knistern in Telefonen daher kam, das kleine Käfer an den Kabeln knabberten. Heute kennen wir im IT-Bereich etliche Bug-Varianten. Einige Bugs errangen sogar eine gewisse (unrühmliche) Berümtheit. Einige kosteten sogar Menschenleben!

Hier mal eine kleine Auswahl:

Und zum Abschluß noch der bekannte Bug im Weblin-Chatfenster:
Dort ist ja ab und zu ein Link "Hier kannst du deine Figur ändern". Leider passiert nichts wenn ich klicke - ich werde weder dünner noch dicker oder sonstwas. :-)
Oder habe ich da etwa was falsch verstanden? :-)

Mittwoch, 3. September 2008

Google Chrome - ein erster Test [Update]

Nach dem nun heute alle Chrome - Googles neuen Browser testen konnte ich nicht aussen vorstehen und habe es mal auf XP installiert. Der erste Gesamteindruck: sehr schnell und eine saubere Darstellung der Webseiten. Mein Blog wird so dargestellt wie ich es erwarte, besser als mit IE8 Beta 2 oder FF3. Nachteile sehe ich z.Z darin das der Browser die Sprache nicht korrekt an den Server übermittelt so das mehrsprachige Seiten in der falschen Sprache angezeigt werden, zumindestens bei Sixgroups war es so. Desweiteren stört mich persönlich das man das Tab-Browsing (noch) nicht abschalten kann, denn ich mag das nicht. Auch die noch fehlende Weblin-Kompatibilität ist störend, dafür soll es aber eine Lösung geben, die mir aber noch nicht bekannt ist. Dabei fiel mir auch auf, das ich keine Möglichkeit gefunden habe Plugins manuell zu installieren bzw. zu deinstallieren. Laut Dokumentation macht er das komplett selbständig bei Bedarf. negativ finde ich auch das er im Applikationsordner installiert wurde und nicht im Programmordner. Besonders gefällt mir das das Projekt als Open-Source zur Verfügung steht. Aber am besten ihr testet selbst!

[UPDATE]
Eine Lösung für Weblin ist mir inzwischen bekannt, da diese aber leider nur unter XP läuft werde ich sie hier nicht veröffentlichen.

Dienstag, 26. August 2008

SSL-Zertifikate und das Compact Framwork

Viele Webseiten bereiten ja mit ihrem Zertifikat bei SSL-Requests Probleme. Browser fangen diese ja ab. Programmiert man selbst, muss man dies selber machen, ansonsten kommt es zu einem Laufzeit-Fehler. Bei Anwendungen mit dem Dot.Net Framework benutzte ich dazu folgendes:
ServicePointManager.ServerCertificateValidationCallback
= new System.Net.Security. style="color: #2b91af;">RemoteCertificateValidationCallback(remotecallback);
...

...

...


public bool
remotecallback(Object sender,
X509Certificate certificate,
X509Chain chain,
SslPolicyErrors sslPolicyErrors)



{



       // 
Hier entsprechenden Code einfügen



       return
true;



}


Leider funktioniert dies unter dem Compact Framework nicht, da es die Eigenschaft ServerCertificateValidationCallback nicht unterstützt. Die Lösung dazu ist, CertificatePolicy zu nutzen und eine Klasse zu schreiben, die die Schnittstelle ICertificatePolicy implementiert:


ServicePointManager.CertificatePolicy =
new
AcceptAllCertificatePolicy
();



...



 



...



 



...



 



internal class
AcceptAllCertificatePolicy
:ICertificatePolicy



{



        public AcceptAllCertificatePolicy()



        {



        }



        public bool
CheckValidationResult(ServicePoint sPoint, style="color: #2b91af;">X509Certificate cert, style="color: #2b91af;">WebRequest wRequest, style="color: blue;">int certProb)



        {



              // 
Hier entsprechenden Code einfügen


                return true;


        }



}




Dies mal als Lösungsansatz in C# für alle die damit Schwierigkeiten haben.

Mittwoch, 28. Mai 2008

Facebook API wird OpenSource

Wie Techcrunch berichtete soll die Facebook-API diese Woche noch OpenSource werden. Na mal sehen, ist ja ansich eine gute Sache. Natürlich wäre es schön wenn andere diesem Beispiel folgen würden. Leider haben viele soziale Netzwerke überhaupt noch keine API. Aus Sicht des Entwicklers wäre es natürlich am besten, wenn sich alle an eine gemeinsame Schnittstelle halten, die Initiative OpenSocial ist deshalb sehr zu begrüßen.
Marmel powered by Instant Communities