Browsed by
Schlagwort: C#

XMLSerializer und ein geschachteltes Dictionary in C#

XMLSerializer und ein geschachteltes Dictionary in C#

Xml ist so eine Sache.. etwas geschwätzig, und recht viel tippen muß ich auch, wenn ich es manuell erzeuge.

Xml, COM, Javascript, Html5.. bei einigen Dingen habe ich nie so richtig verstanden, warum sie sich durchsetzen und besser sind als die Konkurrenz.

Doch konkret: Ich wollte ein Dictionary serialisieren und einmal die JSON- mit der XML-Ausgabe vergleichen.

Mehr lesen Mehr lesen

C$ und D$ Netzwerkfreigaben der Festplatten auch unter Windows 7, 8 und neuer

C$ und D$ Netzwerkfreigaben der Festplatten auch unter Windows 7, 8 und neuer

Neben den „designierten” Freigabeordnern möchte ich an meinen Rechnern regelmäßig auch auf andere Dateien in anderen (nicht freigegebenen) Ordnern zugreifen. Dies ging unter Windows XP sehr schön mit

\\Rechnername\c$\pfad

, unter Windows 7 und neuer funktioniert dies jedoch erst nach einer kleinen Änderung.

Mehr lesen Mehr lesen

Autokontrast und Autohelligkeit mit Emgu.CV und OpenCV in C#

Autokontrast und Autohelligkeit mit Emgu.CV und OpenCV in C#

Nachdem ich in OpenCV zunächst dachte, die Funktion EqualizeHist würde eine Anpassung Autokontrast/Autohelligkeit durchführen, habe ich mich doch gewundert, als ich festgestellt habe, daß diese Funktion Eingangs- und Ausgangsbild nichtlinear neu mappt, basierend auf den benutzen Indizes im Histogramm.

Ferner bietet OpenCV wohl diese Funktionalität (so wie gewünscht) nicht von Haus aus, diese läßt sich jedoch leicht nachprogrammieren.

Mehr lesen Mehr lesen

2D Newton (in 2 Dimensionen) unter C# zur Findung von Lösungen und Nullstellen von Gleichungssystemen

2D Newton (in 2 Dimensionen) unter C# zur Findung von Lösungen und Nullstellen von Gleichungssystemen

Kleine (vor allem mathematische) Codestücke sind meistens nicht vorhanden, wenn man sie benötigt.

Alternativ sind sie in einer riesigen Bibliothek, wo die einzelnen Funktionen so stark verzahnt sind, daß man sie nicht auseinander reißen kann, und Dutzende MB extra einbinden muß – für eine Funktion.

Wenn man nur einen 2D Newton benötigt, hilft evtl. auch das hier.

Mehr lesen Mehr lesen

C# Winforms Histogramm (für Bitmaps oder zum Anzeigen in einer PictureBox)

C# Winforms Histogramm (für Bitmaps oder zum Anzeigen in einer PictureBox)

Es gibt immer wieder Standardaufgaben, für die es noch keine Lösung gibt. So, wie zu einer Bitmap ein Histogramm zu erzeugen – und zwar wieder in einer Bitmap. Das läßt sich dann sehr einfach z. B. mit einer PictureBox verknüpfen, und schon hat man eine passende Anzeige.

Mehr lesen Mehr lesen

Little Endian, Big Endian oder generelles Umdrehen von Bytefolgen in C#

Little Endian, Big Endian oder generelles Umdrehen von Bytefolgen in C#

Ab und zu sehnt man sich auch unter C# zur guten alten C++ (naja, C) Zeit zurück, wo man noch beliebig tiefen Zugriff auf alles hatte, beliebig Typen casten konnte und – so lange man ein wenig aufgepasst hat – so wahre Wunder bewirken kann. (Ja, und das konnte nicht jeder.. und nach ein paar Anfangsfehlern ist auch alles gut gelaufen.)

Die Typensicherheit ist in C# etwas schwieriger zu umgehen, jedoch geht auch das, und damit lassen sich dann beispielsweise in hardwarenaher oder Netzwerk-Programmierung Werte dem Zielformat anpassen, z. B. auf Byteebene in der Reihenfolge umdrehen – und dass dann auch für floats et al.

Mehr lesen Mehr lesen

WPF: Text scrollen ähnlich einem Live-Ticker (mit Anhalten)

WPF: Text scrollen ähnlich einem Live-Ticker (mit Anhalten)

Gar nicht so leicht, einen deskriptiven Titel zu finden, der nicht schon wieder komisch klingt. Nun ja.

Ich habe für eine Anwendung mit folgenden Anforderungen eine Lösung gesucht:

  • WPF Anwendung
  • Scrollen ähnlich einem Nachrichtenticker
  • Einzelne Werte werden einzeln eingegeben und scrollen jeweils nur einen Platz weiter, das Scrollen stoppt als zwischendurch

Mehr lesen Mehr lesen

ThreadPool.QueueUserWorkItem vs Thread.Start (Vergleich der Ausführungsgeschwindigkeit)

ThreadPool.QueueUserWorkItem vs Thread.Start (Vergleich der Ausführungsgeschwindigkeit)

Im Rahmen der Optimierung der Laufzeit einer Anwendung stolperte ich über einen in der Praxis recht oft vorkommenden Fall. Der Profiler zeigte (nach langem Konfigurieren und Suchen dank der schlechten Dokumentation des mäßigen Profilers im Visual Studio 2008 TS) eine bestimmte recht kostenintensive I/O-Funktion, die oft aufgerufen wird. Klarer Fall: so etwas läßt sich einfach durch Parallelisierung optimieren.

Mehr lesen Mehr lesen