Blog
Wir teilen praxisnahe Denkansätze zu Website-Erstellung, SEO, Google-Ads-Betreuung, Windows-Entwicklung, der Nutzung bestehender Assets und Fehleruntersuchung.
KI-Suche über die gesamte Website
Suchanfragen werden zur Ergebniserstellung an Cloudflare AI Search übermittelt. Bitte keine personenbezogenen Daten eingeben.
-
Wie man die Geschwindigkeit verschiedener Programmversionen unter Windows korrekt vergleicht
Ein reproduzierbares Verfahren zum Vergleich von Programmversionen unter Windows — mit power mode, power plan, Wärmeentwicklung, Hintergrundrauschen, Messgrö...
-
Wie man in einer Windows-App konkret nur die „Vorgänge, die Administratorrechte brauchen“ isoliert
Eine konkrete Anleitung, wie Sie die UI einer Windows-App bei asInvoker belassen und nur die Vorgänge, die Administratorrechte brauchen, in eine Helper-EXE a...
-
Geheimnisse in Windows-Apps speichern – Klartextkonfiguration mit DPAPI vermeiden
Damit Windows-Apps Verbindungsdaten und API-Tokens nicht im Klartext in Konfigurationsdateien speichern, ordnet dieser Artikel das Konzept von DPAPI / Protec...
-
Checkliste vor der Migration von .NET Framework zu .NET
Eine praxisnahe Checkliste für die Zeit vor der Migration von .NET Framework zu .NET: Projekttypen, nicht unterstützte Technologien, NuGet-Abhängigkeiten, SD...
-
YUV mit Media Foundation in RGB konvertieren
Wie Sie YUV-Frames in Media Foundation nach RGB konvertieren: automatische Konvertierung über den Source Reader sowie manuelle NV12-/YUY2-Konvertierung, Stri...
-
Windows NIC-Detaileinstellungen – Leitfaden zu RSS/LSO/EEE/Wake on LAN
Ein praxisorientierter Überblick über die Windows NIC-Detaileinstellungen. Jumbo Packet, Speed & Duplex, RSS, RSC, LSO, Flow Control, EEE, Wake on LAN und me...
-
Ein Standbild aus einer MP4 zu einem bestimmten Zeitpunkt mit Media Foundation extrahieren
Wie man mit dem Source Reader die einem bestimmten Zeitpunkt nächstgelegene Frame aus einer MP4 holt, Stride und den RGB32-Alphakanal korrigiert und als PNG ...
-
Eine Mindest-Sicherheitscheckliste für die Windows-Anwendungsentwicklung
Ordnet für WPF / WinForms / WinUI / C++ / C#-Businessanwendungen die Grundlagen zu Rechten, Signatur, Updates, Geheimnissen, HTTPS, Eingabevalidierung, DLL-L...
-
Was ist der .NET Generic Host? - Das Fundament für DI, Konfiguration und Logging
Wir ordnen die Rolle des Generic Host anhand seiner Beziehung zu DI, Konfiguration, Logging, IHostedService und BackgroundService ein und fassen aus der Prax...
-
Was ist .NET Native AOT? - Der Unterschied zu JIT und Trimming
Wir ordnen ein, was Native AOT ist, anhand der Unterschiede zu JIT, ReadyToRun, self-contained, single-file, trimming und Source Generators, und fassen aus d...
-
Was sind COM / ActiveX / OCX? – Unterschiede und Zusammenhänge im Überblick
Wir ordnen praxisnah ein, was COM, was ActiveX und was OCX ist – mit den Unterschieden und Zusammenhängen, der Verbindung zu OLE, den Einsatzorten und der Fr...
-
Die richtige Wahl unter .NETs drei Timern – PeriodicTimer/Timer/DispatcherTimer
Die Unterschiede zwischen PeriodicTimer, System.Threading.Timer und DispatcherTimer – und wie Sie sie für async-Verarbeitung, ThreadPool-Callbacks und WPF-UI...
-
Eine C# Native AOT DLL aus C/C++ aufrufen
Wie man eine C#-Klassenbibliothek mit Native AOT als native DLL veröffentlicht und Einstiegspunkte mit UnmanagedCallersOnly aus C/C++ aufruft – Einsatzbereic...
-
Warum .NET Generic Host und BackgroundService in Desktop-Apps verwenden
Wie sich Generic Host und BackgroundService nutzen lassen, um Start, periodische Verarbeitung, Beendigung, Logging, Konfiguration und DI in Windows-Tools und...
-
ActiveX / OCX heute behandeln - Entscheidungstabelle: Behalten, Kapseln, Ersetzen
Wenn Sie ActiveX / OCX vorfinden, ordnet dieser Artikel ein, ob Sie es behalten, kapseln oder ersetzen sollten - einschließlich 32-Bit/64-Bit, Registrierung,...
-
WPF/WinForms: async und der UI-Thread auf einem Blatt
Ordnet für WPF / WinForms, wohin await zurückkehrt, sowie die typischen Stolperstellen bei Dispatcher / Invoke, ConfigureAwait(false) und .Result / .Wait().
-
Ein Testfundament für Windows-Failure-Paths mit Application Verifier
Was Application Verifier ist, erklärt zusammen mit dem Aufbau eines Windows-Testfundaments für Failure-Path-Tests mit Handles, Heaps, Low Resource Simulation...
-
Untersuchung eines Absturzes einer Industriekamera-Anwendung nach Langzeitbetrieb - Der Handle-Leak (Teil 1)
Wie man vorgeht, wenn eine Windows-Anwendung nach langem Dauerbetrieb plötzlich abstürzt: anhand eines Fallbeispiels einer Industriekamera-Steuerungsanwendun...
-
TCP-Retransmission als Ursache für Kommunikationsausfälle bei Industriekameras – Ursachensuche und Eingrenzung
Wie Sie eingrenzen, wenn die Kommunikation mit einer Industriekamera durch TCP-Retransmission für einige Sekunden stoppt: mit Paketverlust, RTO, RFC1323-Zeit...
-
Praxisleitfaden für FileSystemWatcher - Umgang mit verpassten und doppelten Ereignissen
Wir ordnen die Verwendung von FileSystemWatcher und ihre Fallstricke entlang von verpassten Ereignissen, doppelten Benachrichtigungen, Fallen bei der Abschlu...
-
Media Foundation verstehen – Warum sich die API wie COM anfühlt
Was Media Foundation eigentlich ist, zusammen mit dem grundlegenden Vokabular der Windows-Medien-APIs – COM, HRESULT, IMFSourceReader, MFT – in der Reihenfol...
-
C# async/await-Praxis-Entscheidungstabelle – Task.Run und ConfigureAwait
Dieser Artikel ordnet die Best Practices für C# async/await – I/O-Wartezeiten, CPU-Berechnungen, Task.Run, ConfigureAwait(false) und fire-and-forget – anhand...
-
Praktischer Leitfaden, um auf gewöhnlichem Windows so nah wie möglich an Soft Real-Time heranzukommen
Wir ordnen die Überlegungen zur Stabilisierung von periodischer Verarbeitung und Low-Latency-Verarbeitung auf gewöhnlichem Windows, anhand von Timer-Genauigk...
-
Grundlagen des wechselseitigen Ausschlusses bei der Dateiintegration - Best Practices für Dateisperren und atomare Claims
Wir ordnen den wechselseitigen Ausschluss bei der Dateiintegration entlang von Dateisperren, atomaren Claims, temp -> rename und idempotency und fassen Desig...
-
Native DLLs aus C# aufrufen: C++/CLI-Wrapper vs. P/Invoke
Wenn C# native DLLs verwendet, unterscheidet dieser Artikel, wann P/Invoke ausreicht und wann sich ein C++/CLI-Wrapper lohnt – anhand von Besitzverhältnissen...
-
Einführung in HCP-Charts und MakingHCPChartSkill
Wir erklären, was HCP-Charts sind, und zeigen, wie MakingHCPChartSkill HCP-DSL in deterministisches SVG umwandelt, wie man das Ergebnis liest und wie man es ...
-
Grundlagenwissen zu COM STA/MTA – Threadmodelle und wie man Hänger vermeidet
Grundlagenwissen zu COM STA/MTA: Apartment-Modell, UI-Thread, Nachrichtenschleife, Marshalling und wie man Hänger vermeidet – übersichtlich erklärt.
-
Eine COM-Bridge zum Aufruf einer 64-Bit-DLL aus einer 32-Bit-Anwendung – ein Praxisbeispiel
Wenn eine 32-Bit-Anwendung eine 64-Bit-DLL nicht direkt aufrufen kann, lässt sich die Verbindung über eine COM-Bridge herstellen. Wir ordnen den Ansatz zusam...
-
Was ist COM? – Warum das Design von Windows COM auch heute noch schön ist
Wir ordnen ein, was COM ist, ausgehend vom Interface-Design von Windows COM, IUnknown, GUIDs und der Binärkompatibilität, und erklären, warum es sich bis heu...
-
Ankündigung unseres Technik-Blogs – Wir haben einen Windows/C#/COM-Entwicklungsblog gestartet
Ankündigung des Starts des Technik-Blogs der KomuraSoft LLC. Wir teilen hier Erkenntnisse zu Windows-Entwicklung, C# / .NET, COM, Softwaredesign und Entwickl...