Content by Rick Strahl (28)
Rick Strahl shows how to use .NET Native AOT to publish a Windows-native WinAPI-style (StdCall) DLL from a .NET class library, including how to export functions with UnmanagedCallersOnly, build with dotnet publish, and handle interop constraints like strings and structs when calling from FoxPro.
Rick Strahl shows how to host and integrate the Westwind.Scripting ScriptParser in a real app, using Documentation Monster as an example. He covers template hosting, runtime compilation setup, layout/content templates, path and base URL fixups for preview vs generated sites, and practical error handling.
Rick Strahl walks through Westwind.Scripting’s ScriptParser: a C# (raw .NET) templating engine that parses Handlebars-like templates into generated C# code, compiles them with Roslyn at runtime, caches the results, and (new in this update) supports file-based layout pages and sections.
Rick Strahl introduces the Westwind.Scripting ScriptParser template engine, showing how it compiles Handlebars-style templates with embedded raw C# into fast, cached .NET code, including new support for layout pages and sections.
Rick Strahl explains how to simplify and automate code signing for Windows binaries using Azure Trusted Signing and the dotnet sign tool, sharing technical setup and scripting tips for secure development workflows.
Rick Strahl shares his experience with failures using the Microsoft timestamp server for code signing and recommends alternative, more reliable servers. The article provides practical advice and example code for secure code signing workflows.
Rick Strahl explains several approaches to reliably refresh the Microsoft WebView2 control for WPF, focusing on solutions to reload web content and resources, and providing sample code for soft and hard cache clearing.
Rick Strahl analyzes frequent `\\.\nul` device errors breaking file lookups in Markdown Monster, offering insights into the Windows filesystem and practical .NET solutions for developers.
Rick Strahl examines the implementation of keyboard mapping and menu accelerator key support in Microsoft WebView2 for .NET and WPF applications, using practical examples from Markdown Monster.
Rick Strahl documents what it actually takes to get Azure Trusted Signing working for Windows code-signing, including the Azure resources you must create, the client tooling (Azure CLI, Trusted Signing tools, Signtool), and a practical PowerShell-based signing flow—plus the gotchas that cost him a day.
In this article, Rick Strahl addresses a common usability issue with WPF's TreeView, offering .NET code and helper methods to properly center selected items and improve user experience.
In this detailed blog post, Rick Strahl examines .NET's handling of long Windows file paths during zip extraction. He discusses the limitations of ZipFile.ExtractToDirectory, reviews Windows long path support options, and presents alternative coding approaches to overcome path length restrictions in C# projects.
In this article, Rick Strahl discusses how to enable runtime extensibility in .NET apps using NuGet package loading and dynamic assembly integration, with practical code samples and insights from his work on LiveReloadServer.
Rick Strahl explains a common gotcha when renewing FileZilla Server’s self-signed admin certificate: the “Distinguished Name” field expects a full Common Name (CN=...) formatted string, not just a hostname, otherwise the certificate generation fails with an unhelpful error.
In this comprehensive guide, Rick Strahl explores how to configure Microsoft.Extensions.AI with multiple providers such as OpenAI, Azure OpenAI, and Ollama, detailing the setup process and sharing practical code examples for streaming completions in .NET applications.
In this detailed post, Rick Strahl discusses common challenges and streamlined solutions for handling document load events in WebView2 controls within .NET and WPF applications. He introduces the Westwind.WebView library, focusing on its WaitForDocumentLoaded() helper for more linear, maintainable workflows.
In this technical post, Rick Strahl discusses how WPF’s Image control locks local image files, the issues it causes, and presents XAML and custom binding converter strategies—including image caching—to solve the problem efficiently for .NET Windows applications.
In this detailed post, Rick Strahl outlines the key challenges and solutions for deploying .NET Windows Desktop apps that run natively on both x64 and Arm64 platforms, with specific insights from developments on Markdown Monster.
Rick Strahl discusses the practical integration of Windows.Media SpeechRecognition within WPF applications using .NET. The post highlights code samples, SDK dependencies, workarounds for WinRT/.NET issues, and language management.
Rick Strahl offers practical solutions for improving HTML readonly input controls, providing tips on CSS, tabindex, and UI design trade-offs for web developers.