Wednesday, July 21. 2010
Hall of shame: Control Center
Windows traut sich mal wieder nicht selbst über den Weg...
Windows once again distrusts itself...
Monday, July 19. 2010
Stuttgart 21
Da haben sich die Resortleiter "Gleisfeld" und "Bahnhof" wohl nicht klar geeinigt, welcher Fahrplan gelten soll
Saturday, June 19. 2010
CloneVDIGUI - New Version with Oracle Support
Nach der Aquisition von VirtualBox durch Oracle wurde das CloneVDIGUI-Tool erneut an VirtualBox angepasst. Der Installations- und Registrypfad von VirtualBox (aktuelle Version 3.2.x) hatte sich wieder einmal geändert, so dass die vboxmanage.exe nicht mehr automatisch gefunden wurde.
Die neue Version unterstützt die neuen Standardpfade und Registryeinträge von Oracle und speichert ggf. den manuell ausgewählten Pfad ab, so dass immer wenn der Pfad nicht automatisch gefunden werden kann der gespeicherte Pfad verwendet wird. Weitere Änderungen gibt es in dieser Version keine.
Hinter dem Klick folgt Download, Beschreibung und Changelog CloneVDIGUI.
The VirtualBox command line helper for cloning disk images, CloneVDIGUI, was updated once more after the Aquisition of VirtualBox by Oracle. The default installation path and registry path of virtualbox has changed once again, so vboxmanage.exe was no longer found automatically. The new version now detects the path correclty again (VirtualBox version 3.2.x) and also saves a manually selected path for use whenever the autodetection fails. No other changes were made since the last update.
Download, Description and Changelog of CloneVDIGUI follows after the click.
Sunday, May 30. 2010
Fixed DTA file writer for DTAUS files
Last year, I published a C# library for writing DTAUS files (a german bank transaction file format). Recently, a reader notified me about a litte bug in the class that prevented the file to create valid data sets in the case that only one reference line was used. This bug is now fixed and the corrected version is available for download now. Additonally, the human readable log file did not contain the first reference line (also fixed). Another change was the number type for the origination bank account number, this was still bases on int and could cause problems with long account numbers, the new data format is long.
A new feature is also included: The function
StringBuilder CreateHumanReadableDTA(BankTransactionRequest request)
can be used to create a human readable textual representation of the passed bank transaction request.
Thanks again for the feedback! I'm looking forward to receive further feedback and feature proposals...
The license is still Creative Commons NC-BY-SA. If you want to simply use my code in another (even sold) product, please contact me, if your product is more than "a library for DTAUS file management", I should gracefully permit you the right to use it.
(Code download after german translation, If you need a binary version of the file, just post me a line using the comments function of the blog.)
N.B. To check your DTA files, you can the DTAUS checker service of xpecto.de.
Letztes Jahr habe ich eine C#-Bibliothek für das Erstellen von DTAUS-Dateien vorgestellt. Kürzlich informierte mich einer meiner Leser, dass diese Version ein Problem enthält, das die Erstellung von gültigen DTA-Dateien verhindert, wenn nur eine Verwendzungszweck-Zeile benötigt wird. Zusätzlich wurde in der menschenlesbaren Datei die erste Zeile des Verendungzweck nicht angezeigt. Diese beiden Probleme habe ich nun behoben und die korrigierte Version steht zum Download bereit. Zusätzlich wurde das Datenformat der Kontonummer des Absenders von int auf long umgestellt, um Probleme mit langen Kontonummern zu verhindern.
Eine neue Funktion ist ebenfalls enthalten:
StringBuilder CreateHumanReadableDTA(BankTransactionRequest request)
erzeugt eine menschenlesabre textuelle Repräsentation des übergebenen Requests.
Ich danke nochmal für das Feedback und freue mich über weitere Verbesserungsvorschläge hier im Blog!
Die korrigierte Version kann weiterhin frei verwendet werden, solange die Anwendung nichtkommerziell ist (Creative Commons NC-BY-SA). Wer sie in kommerziellen Produkten einsetzen will, nimmt bitte Kontakt mit mir auf, ich bin gerne bereit, auch dafür die Freigabe zu erteilen, solange es nicht um eine Bibliothek zur DTA-Verwaltung geht...
Wer eine kompilierte Version benötigt, darf sich gerne über die Kommentarfunktion bei mir melden.
PS: Um die erstellten DTA-Dateien zu überprüfen, kann der DTAUS checker von xpecto.de verwendet werden.
Please see the file header for the changelog and further information. You can find the Library here: DTAUSWriter.cs (.NET 3.5 using Linq and auto properties), DTAUSWriter_dnet20.cs (.NET 2.0)
Changelog und weitere Informationen im Dateikopf. Download der DTA-Datei-Bibliothek: DTAUSWriter.cs (.NET 3.5 mit Linq und Autoproperties), DTAUSWriter_dnet20.cs (.NET 2.0)

DTAUS Writer classes for C# von Timotheus Pokorra & Florian Harbich steht unter einer Creative Commons Namensnennung-Keine kommerzielle Nutzung-Weitergabe unter gleichen Bedingungen 3.0 Deutschland Lizenz.
Beruht auf einem Inhalt unter tpokorra.blogspot.com.
A new feature is also included: The function
StringBuilder CreateHumanReadableDTA(BankTransactionRequest request)
can be used to create a human readable textual representation of the passed bank transaction request.
Thanks again for the feedback! I'm looking forward to receive further feedback and feature proposals...
The license is still Creative Commons NC-BY-SA. If you want to simply use my code in another (even sold) product, please contact me, if your product is more than "a library for DTAUS file management", I should gracefully permit you the right to use it.
(Code download after german translation, If you need a binary version of the file, just post me a line using the comments function of the blog.)
N.B. To check your DTA files, you can the DTAUS checker service of xpecto.de.
Letztes Jahr habe ich eine C#-Bibliothek für das Erstellen von DTAUS-Dateien vorgestellt. Kürzlich informierte mich einer meiner Leser, dass diese Version ein Problem enthält, das die Erstellung von gültigen DTA-Dateien verhindert, wenn nur eine Verwendzungszweck-Zeile benötigt wird. Zusätzlich wurde in der menschenlesbaren Datei die erste Zeile des Verendungzweck nicht angezeigt. Diese beiden Probleme habe ich nun behoben und die korrigierte Version steht zum Download bereit. Zusätzlich wurde das Datenformat der Kontonummer des Absenders von int auf long umgestellt, um Probleme mit langen Kontonummern zu verhindern.
Eine neue Funktion ist ebenfalls enthalten:
StringBuilder CreateHumanReadableDTA(BankTransactionRequest request)
erzeugt eine menschenlesabre textuelle Repräsentation des übergebenen Requests.
Ich danke nochmal für das Feedback und freue mich über weitere Verbesserungsvorschläge hier im Blog!
Die korrigierte Version kann weiterhin frei verwendet werden, solange die Anwendung nichtkommerziell ist (Creative Commons NC-BY-SA). Wer sie in kommerziellen Produkten einsetzen will, nimmt bitte Kontakt mit mir auf, ich bin gerne bereit, auch dafür die Freigabe zu erteilen, solange es nicht um eine Bibliothek zur DTA-Verwaltung geht...
Wer eine kompilierte Version benötigt, darf sich gerne über die Kommentarfunktion bei mir melden.
PS: Um die erstellten DTA-Dateien zu überprüfen, kann der DTAUS checker von xpecto.de verwendet werden.
Please see the file header for the changelog and further information. You can find the Library here: DTAUSWriter.cs (.NET 3.5 using Linq and auto properties), DTAUSWriter_dnet20.cs (.NET 2.0)
Changelog und weitere Informationen im Dateikopf. Download der DTA-Datei-Bibliothek: DTAUSWriter.cs (.NET 3.5 mit Linq und Autoproperties), DTAUSWriter_dnet20.cs (.NET 2.0)

DTAUS Writer classes for C# von Timotheus Pokorra & Florian Harbich steht unter einer Creative Commons Namensnennung-Keine kommerzielle Nutzung-Weitergabe unter gleichen Bedingungen 3.0 Deutschland Lizenz.
Beruht auf einem Inhalt unter tpokorra.blogspot.com.
Saturday, November 28. 2009
CloneVDIGUI - Support für VBox 3.0.12, x64
Dank einem Hinweis von notebook im VirtualBox Community Forum wurde das CloneVDIGUI-Tool erneut an VirtualBox angepasst. Der Installations- und Registrypfad von VirtualBox (aktuelle Version 3.0.12) hatte sich geändert, so dass die vboxmanage.exe nicht mehr automatisch gefunden wurde.
Die neue Version unterstützt die neuen Pfade und speichert ggf. den manuell ausgewählten Pfad ab, so dass immer wenn der Pfad nicht automatisch gefunden werden kann der gespeicherte Pfad verwendet wird. Die GUI hat sich seit der letzten Version nicht verändert.
Hinter dem Klick folgt Download, Beschreibung und Changelog CloneVDIGUI.
The VirtualBox command line helper for cloning disk images, CloneVDIGUI, was updated once more after a bug report of notebook in the VirtualBox Community Forum. The default installation path and registry path of virtualbox has changed, so vboxmanage.exe was no longer found automatically. The new version now detects the path correclty again (VirtualBox version 3.0.12) and also saves a manually selected path for use whenever the autodetection fails. The UI didn't change since the last update.
Download, Description and Changelog of CloneVDIGUI follows after the click.
UPDATE: There is a similar project for linux in the "don't trust technology" blog (german)
UPDATE: Es gibt ein ähnliches Projekt für Linux im "don't trust technology" blog
Thursday, November 26. 2009
SharedSize Grid with Silverlight
Since there is no SharedSizeGroup property for the Silverlight Grid I decided to code that myself. It is really helpful if you design a page with multiple Grids on it.
To give you an overview of the usage here is a Silverlight 3.0 XAML file
<UserControl x:Class="SLTestApp.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ext="clr-namespace:System.Windows.Controls.Extensions;assembly=System.Windows.Controls.Extensions"
mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480">
<Grid x:Name="LayoutRoot" Background="White" ext:SharedSize.IsSharedSizeScope="True">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid x:Name="firstfirstGrid" Grid.Row="0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.ColumnDefinitions>
<Border BorderBrush="Green" BorderThickness="2">
<TextBlock x:Name="txtFirstFirst" >
<Run>aa</Run>
<LineBreak />
<Run>aa</Run>
</TextBlock>
</Border>
</Grid>
<Grid x:Name="firstsecondGrid" Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.ColumnDefinitions>
<Border BorderBrush="Blue" BorderThickness="2">
<TextBlock Text="aaaaaaaaaaaaaaaa" />
</Border>
</Grid>
</Grid>
</UserControl>
The current version only works in XAML and does not support adding a Grid or a SharedSize property in code and during runtime.
Download the release DLL

Here's the source code
SharedSizeGrid.zip
If you modify it and send it to me, I'll be happy to share the new version.
To give you an overview of the usage here is a Silverlight 3.0 XAML file
<UserControl x:Class="SLTestApp.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ext="clr-namespace:System.Windows.Controls.Extensions;assembly=System.Windows.Controls.Extensions"
mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480">
<Grid x:Name="LayoutRoot" Background="White" ext:SharedSize.IsSharedSizeScope="True">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid x:Name="firstfirstGrid" Grid.Row="0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.ColumnDefinitions>
<Border BorderBrush="Green" BorderThickness="2">
<TextBlock x:Name="txtFirstFirst" >
<Run>aa</Run>
<LineBreak />
<Run>aa</Run>
</TextBlock>
</Border>
</Grid>
<Grid x:Name="firstsecondGrid" Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" ext:SharedSize.SharedSizeGroup="A"/>
</Grid.ColumnDefinitions>
<Border BorderBrush="Blue" BorderThickness="2">
<TextBlock Text="aaaaaaaaaaaaaaaa" />
</Border>
</Grid>
</Grid>
</UserControl>
The current version only works in XAML and does not support adding a Grid or a SharedSize property in code and during runtime.
Download the release DLL

Here's the source code
SharedSizeGrid.zip
If you modify it and send it to me, I'll be happy to share the new version.
Saturday, November 21. 2009
Writing DTAUS files with C# (DTA-Dateien mit C# erzeugen)
In germany there is a file format for transfering bank transaction requests called DTAUS. I recently had the need to create such a file programatically, so I searched if anyone else already managed this task.
What I found was a blog entry of Timotheus Pokorra who wrote a litte C# class that managed this task for direct debits.
He generously allows anyone to use this class and provides his source code as download.
For my task, I extended his code to work with C# data objects instead of Xml data structures and added some optimizations and extensions.
The result is a set of three classes to create bank transfer or direct debit requests and allow them to be exported into to DTAUS fiel format with complete code documentation.
Of course, I will not hesitate to give back my extensions to the great work to Timotheus and the remaining web community.
Nevertheless, I do not want this class to be sold by others, so the license is Creative Commons NC-BY-SA. If you want to simply use my code in another (even sold) product, please contact me, if your product is more than "a library for DTAUS file management", I should gracefully permit you the right to use it.
(Download after german translation)
If you need a binary version of the file, just post me a line using the comments function of the blog.
Vor kurzem Stand ich vor der Aufgabe, in einem von mir geschriebenen Programm DTA-Dateien schreiben zu können, die in Deutschland verwendet werden, um Bankeinzug oder Überweisungsaufträge an Banken zu übermitteln. Nach einigem Suchen fand ich im Blog von Timotheus Pokorra eine Codedatei, die genau diese Aufgabe in C# erledigt. Der Code war für Xml-Strukturen als Eingabe entwickelt und darf frei verwendet werden.
Ich habe diese Klasse ein wenig erweitert, optimiert, Fehler ausgebügelt und zwei Datenobjekte erstellt, mit denen die Daten für den DTA-Auftrag in C#-Strukturen gespeichert werden können.
Gerne stelle ich meine Erweiterungen auch wieder frei zur Verfügung, solange die Anwendung nichtkommerziell ist (Creative Commons NC-BY-SA). Wer sie in kommerziellen Produkten einsetzen will, nimmt bitte Kontakt mit mir auf, ich bin gerne bereit, auch dafür die Freigabe zu erteilen, solange es nicht um eine Bibliothek zur DTA-Verwaltung geht...
Wer eine kompilierte Version benötigt, darf sich gerne über die Kommentarfunktion bei mir melden.
Please see the file header for the changelog and further information. You can find the Library here: DTAUSWriter.cs (.NET 3.5 using Linq and auto properties), DTAUSWriter_dnet20.cs (.NET 2.0)
Changelog und weitere Informationen im Dateikopf. Download der DTA-Datei-Bibliothek: DTAUSWriter.cs (.NET 3.5 mit Linq und Autoproperties), DTAUSWriter_dnet20.cs (.NET 2.0)

DTAUS Writer classes for C# von Timotheus Pokorra & Florian Harbich steht unter einer Creative Commons Namensnennung-Keine kommerzielle Nutzung-Weitergabe unter gleichen Bedingungen 3.0 Deutschland Lizenz.
Beruht auf einem Inhalt unter tpokorra.blogspot.com.
What I found was a blog entry of Timotheus Pokorra who wrote a litte C# class that managed this task for direct debits.
He generously allows anyone to use this class and provides his source code as download.
For my task, I extended his code to work with C# data objects instead of Xml data structures and added some optimizations and extensions.
The result is a set of three classes to create bank transfer or direct debit requests and allow them to be exported into to DTAUS fiel format with complete code documentation.
Of course, I will not hesitate to give back my extensions to the great work to Timotheus and the remaining web community.
Nevertheless, I do not want this class to be sold by others, so the license is Creative Commons NC-BY-SA. If you want to simply use my code in another (even sold) product, please contact me, if your product is more than "a library for DTAUS file management", I should gracefully permit you the right to use it.
(Download after german translation)
If you need a binary version of the file, just post me a line using the comments function of the blog.
Vor kurzem Stand ich vor der Aufgabe, in einem von mir geschriebenen Programm DTA-Dateien schreiben zu können, die in Deutschland verwendet werden, um Bankeinzug oder Überweisungsaufträge an Banken zu übermitteln. Nach einigem Suchen fand ich im Blog von Timotheus Pokorra eine Codedatei, die genau diese Aufgabe in C# erledigt. Der Code war für Xml-Strukturen als Eingabe entwickelt und darf frei verwendet werden.
Ich habe diese Klasse ein wenig erweitert, optimiert, Fehler ausgebügelt und zwei Datenobjekte erstellt, mit denen die Daten für den DTA-Auftrag in C#-Strukturen gespeichert werden können.
Gerne stelle ich meine Erweiterungen auch wieder frei zur Verfügung, solange die Anwendung nichtkommerziell ist (Creative Commons NC-BY-SA). Wer sie in kommerziellen Produkten einsetzen will, nimmt bitte Kontakt mit mir auf, ich bin gerne bereit, auch dafür die Freigabe zu erteilen, solange es nicht um eine Bibliothek zur DTA-Verwaltung geht...
Wer eine kompilierte Version benötigt, darf sich gerne über die Kommentarfunktion bei mir melden.
Please see the file header for the changelog and further information. You can find the Library here: DTAUSWriter.cs (.NET 3.5 using Linq and auto properties), DTAUSWriter_dnet20.cs (.NET 2.0)
Changelog und weitere Informationen im Dateikopf. Download der DTA-Datei-Bibliothek: DTAUSWriter.cs (.NET 3.5 mit Linq und Autoproperties), DTAUSWriter_dnet20.cs (.NET 2.0)

DTAUS Writer classes for C# von Timotheus Pokorra & Florian Harbich steht unter einer Creative Commons Namensnennung-Keine kommerzielle Nutzung-Weitergabe unter gleichen Bedingungen 3.0 Deutschland Lizenz.
Beruht auf einem Inhalt unter tpokorra.blogspot.com.
Saturday, October 31. 2009
Windows 7 freeze after sleep
Today I tried to install Windows 7 RTM on my media pc. The mainboard is a Gigybyte EG45M-DS2H.
Everything worked fine except the sleep mode. Everytime I set my pc to sleep an wake it up after a while it freezed after a few seconds. To fix this problem, I installed the Intel Inf Chipset drivers and updated the BIOS to the current version (F4).
Now it works like a charm
Everything worked fine except the sleep mode. Everytime I set my pc to sleep an wake it up after a while it freezed after a few seconds. To fix this problem, I installed the Intel Inf Chipset drivers and updated the BIOS to the current version (F4).
Now it works like a charm
Monday, September 28. 2009
Die Bahn mal wieder
Dass die Bahn manchmal zu spät kommt, wissen wir alle.
Die Begründungen sind meistens ja auch nichts besonderes:
„Baustellen“, „Signalstörung“, „Störung des Betriebsablaufs“ usw.
Meistens.
Heute Morgen kam mein Zug mit 40min fast pünktlich
an. Der Schaffner stieg aus, blickte nach links, blickte nach rechts, stieg wieder ein und ging eiligen Schrittes zu seiner Sprechstelle. Die folgende Durchsage hat uns den Tag dann doch erheitert:
Was soll man da noch sagen...
Die Begründungen sind meistens ja auch nichts besonderes:
„Baustellen“, „Signalstörung“, „Störung des Betriebsablaufs“ usw.
Meistens.
Heute Morgen kam mein Zug mit 40min fast pünktlich
Meine sehr verehrten Reisenden, die Weiterfahrt verzögert sich um ca. 5 Minuten. Wir warten auf unseren Lokführer.
Was soll man da noch sagen...
Saturday, September 5. 2009
Google kidnapped by aliens
Whe you visit the german google homepage today, you can see an image of an UFO capuring the O out of the word "google". What does this mean? Currenty, the google doodle links to the words "Rätselhaftes Phänomen" (mysterious phenomenon) but not to some words explaining this doodle.
One comment in the google watchblog (ger) seems to explain this:
It was today when Voyager 1, the first large distance space exploration missing was started 22 years ago.
Another idea reported by TopNews (ger): Google impressively demonstrates a phenomenon of the internet: Pages that were totally unknown up to a certain event can come into view of a huge amount of visitors overnight.
Google itself twitters: "All your o are belong to us!" (encoded in numbers). We will see if google will resolve this riddle...
One comment in the google watchblog (ger) seems to explain this:
It was today when Voyager 1, the first large distance space exploration missing was started 22 years ago.
Another idea reported by TopNews (ger): Google impressively demonstrates a phenomenon of the internet: Pages that were totally unknown up to a certain event can come into view of a huge amount of visitors overnight.
Google itself twitters: "All your o are belong to us!" (encoded in numbers). We will see if google will resolve this riddle...
Sunday, August 23. 2009
Silverlight-Wishlist (Part I)
Up to now I've collected rather a bit of expericence in Microsoft Silverlight since its release to web.
Working with new technology always introduces some problems and shows what is still missing in "the new baby".
This article starts a little series to collect different things we found to be missing or at least "suboptimal" in silverlight. The entry will be updated or a new entry added when we find other noteworthy points.
I will start the series with some DataGrid and TreeView hickhacks (after the click). Continue reading "Silverlight-Wishlist (Part I)"
Working with new technology always introduces some problems and shows what is still missing in "the new baby".
This article starts a little series to collect different things we found to be missing or at least "suboptimal" in silverlight. The entry will be updated or a new entry added when we find other noteworthy points.
I will start the series with some DataGrid and TreeView hickhacks (after the click). Continue reading "Silverlight-Wishlist (Part I)"
Saturday, July 18. 2009
CloneVDIGUI - More Power!
Angeregt von HunterX im VirtualBox Community Forum wurde die grafische Oberfläche für das VirtualBox-Commandlinetool VBoxManage.exe wurde mal wieder aktualisiert. CloneVDIGUI unterstützt nun alle Kommandozeilenoptionen, die momentan von VirtualBox (aktuelle Version 3.0.2) unterstützt werden.
Hinter dem Klick folgt Download, Beschreibung und Changelog CloneVDIGUI.
The VirtualBox command line helper for cloning disk images, CloneVDIGUI, was updated once more after a suggestion of HunterX in VirtualBox Community Forum. It now supports all command line options of the current version, VirtualBox 3.0.2.
Download, Description and Changelog of CloneVDIGUI follows after the click.
Thursday, May 28. 2009
Google enters (or not?)
Since google lastly changed its google suggestion feature (the little dropdown box with search words as you type a query),
many users experience the problem that the enter key does no longer start a search.
This happens only when the suggestion does not find a suitable proposal.
The fix is easy:
Simply delete your cookies...
In Opera, press F12, select "edit site preferences...", cookies and delete them. No need to clear all your precious login cokkies for other domains than "google.com".
(via google forums)
many users experience the problem that the enter key does no longer start a search.
This happens only when the suggestion does not find a suitable proposal.
The fix is easy:
Simply delete your cookies...
In Opera, press F12, select "edit site preferences...", cookies and delete them. No need to clear all your precious login cokkies for other domains than "google.com".
(via google forums)
Wednesday, May 27. 2009
Bring Light to your Silverlight
Ever wanted to know why the heck your brand new silverlight application crashes just once more...
Then check out the Silverlight Spy .
And, after I found out most of it myself in hard work, I finally found this great article about Silverlight Authentication patterns to be used with your silverlight app talking to your web service:
http://www.silverlightshow.net/items/Building-a-Silverlight-Line-Of-Business-Application-Part-3.aspx
I hope I made you cut the corner...
Then check out the Silverlight Spy .
And, after I found out most of it myself in hard work, I finally found this great article about Silverlight Authentication patterns to be used with your silverlight app talking to your web service:
http://www.silverlightshow.net/items/Building-a-Silverlight-Line-Of-Business-Application-Part-3.aspx
I hope I made you cut the corner...
Thursday, March 26. 2009
WCF Peer-To-Peer (PNRP) under Windows Server 2008
Some days ago on my job I was in charge of extending a legacy .net application to be able to run synchronously on serveral windows server 2008 (standard edition) hosts.
This had to be implemented because of changes to the underlaying host topology (in fact, an standalone webserver was turned into a server farm).
I decided to create a new interface DLL as an adapter to the existing app and use the Microsoft WCF (or "dot-c-f", as they like to call it) API to the PNRP service.
The use of a peer-to-peer architecture made the changes lightweight.
The development of the WCF Interface under windows vista (my development box) went quite well and worked almost immediately.
But the problems came up when I deployed the whole thing to my to win2008 hosts. No peer-to-peer communication was possible, and – even worse – the peers didn't even change their state to "connected" (meaning in microsoft speach that they aren't "alone"), although a connection via TCP and IPv6 was possible between both of the hosts.
This lead my search torwards searching for an infrastructure problem. After googling several results saying that PNRP wasn't possible under win2008 - which I couldn't imagine myself - the solution was finally pretty simple: you just have to install and enable three needed windows services:
1. peer name resolution server (install via server management center as new feature)
2. peer discovery server (same point as above)
3. (not mentioned by MSDN!) the SSDP Service has to be enabled and startet. It is not startet automatically with the PNRP service as there is no service dependency! (Simply change the service start option to Automatically.)
Be sure that all three services are running (and are startet upon system startup) and all your hosts will automagically go into the "connected" state on the LinkLocal-Peer-To-Peer-Cloud.
If you don't know what the SSDP Service is good for: don't mind, I don't either. When you're looking at Wikipedia you will find that SSDP stands for "Simple Service Discovery Protocol" and it is usually used for UPnP Device Discovery. Seems like some creative microsoft programmer decided to use this service in WCF without documenting it!
Finally two more hints, if you're new to WCF P2P Programming:
This had to be implemented because of changes to the underlaying host topology (in fact, an standalone webserver was turned into a server farm).
I decided to create a new interface DLL as an adapter to the existing app and use the Microsoft WCF (or "dot-c-f", as they like to call it) API to the PNRP service.
The use of a peer-to-peer architecture made the changes lightweight.
The development of the WCF Interface under windows vista (my development box) went quite well and worked almost immediately.
But the problems came up when I deployed the whole thing to my to win2008 hosts. No peer-to-peer communication was possible, and – even worse – the peers didn't even change their state to "connected" (meaning in microsoft speach that they aren't "alone"), although a connection via TCP and IPv6 was possible between both of the hosts.
This lead my search torwards searching for an infrastructure problem. After googling several results saying that PNRP wasn't possible under win2008 - which I couldn't imagine myself - the solution was finally pretty simple: you just have to install and enable three needed windows services:
1. peer name resolution server (install via server management center as new feature)
2. peer discovery server (same point as above)
3. (not mentioned by MSDN!) the SSDP Service has to be enabled and startet. It is not startet automatically with the PNRP service as there is no service dependency! (Simply change the service start option to Automatically.)
Be sure that all three services are running (and are startet upon system startup) and all your hosts will automagically go into the "connected" state on the LinkLocal-Peer-To-Peer-Cloud.
If you don't know what the SSDP Service is good for: don't mind, I don't either. When you're looking at Wikipedia you will find that SSDP stands for "Simple Service Discovery Protocol" and it is usually used for UPnP Device Discovery. Seems like some creative microsoft programmer decided to use this service in WCF without documenting it!
Finally two more hints, if you're new to WCF P2P Programming:
- Better turn off the windows firewall, as it is blocking the IPv4 to V6 Teredo tunneling driver. Be sure that IPv6 is supported by your network infrastructure, as it is mandatory for the PNRP protocol.
- Don't forget a config flag in your app to disable the p2p functions, as there will always be a collegue that is wondering where the heck these "random" informations came from (if he's not aware of other peers running in the same cloud, doing some crazy buggy stuff).


/* Comments */