Windows Developer Blog -
DotNetCurry.com: Learn .NET Core, ASP.NET MVC, C#, Azure DevOps, JavaScript | Tutorials for Beginners and Experienced Developers
Developing Desktop applications in .NET | DotNetCurry !important
Download a Windows 10 virtual machine - Windows app development Win10 VM
Microsoft releases free Windows Apps programming course - gHacks Tech News
Windows 10 development for absolute beginners | Channel 9
Windows-Readiness/AbsoluteBeginnersWin10
Developer’s Guide to Windows 10 | Channel 9
Choose your app platform | Microsoft Docs
UWP vs. WPF · jbe2277/waf Wiki
With Project Reunion Microsoft is Attempting to Unify Win32 and UWP APIs
non-UWP apps are called "desktop apps" in Microsoft parlance
Hosted App Model - Windows Developer Blog
.NET Runtime
see
c-sharp.md#.net-runtime
Visual Studio
microsoft/vswhere: Locate Visual Studio 2017 and newer installations
Finding installed Visual C++ tools for Visual Studio 2017 | C++ Team Blog
Display WPF Trace Information - Visual Studio | Microsoft Docs
Installer
Squirrel/Squirrel.Windows: An installation and update framework for Windows desktop apps
Inno Setup
Create Software Installer with Inno Setup - YouTube
Python 101: Episode #44 - Creating an Installer with Inno Setup - YouTube
NSIS
NSIS Wiki
NSIS Users Manual
Nullsoft Scriptable Install System - Wikiwand
Using NSIS To Make Installer Packages
Windows Installer
Windows Installer - Win32 apps | Microsoft Docs
Reducing Patch Size - Win32 apps | Microsoft Docs
UI thread
UI thread is of thread ID 1 (Thread.ManagedThreadId Property (System.Threading))
All UI drawing should be called with UI thread
This can be archived with Dispatcher
public class MessageBoxWrapper
{
public static MessageBoxResult Show(string msg, string title, MessageBoxButton buttonStyle, MessageBoxImage image)
{
var result = MessageBoxResult.None;
if (Application.Current.Dispatcher.CheckAccess())
{
// Determines whether the calling thread is the thread associated with this Dispatcher.
result = MessageBox.Show(Application.Current.MainWindow, msg, title, buttonStyle, image);
}
else
{
// Invoke to block the thread until MessageBox is dismissed
Application.Current.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => {
result = MessageBox.Show(Application.Current.MainWindow, msg, title, buttonStyle, image);
}));
}
return result;
}
}
UWP
UWP Documentation - UWP app developer - UWP applications | Microsoft Docs
What's a Universal Windows Platform (UWP) app? - UWP applications | Microsoft Docs
Create a Universal Windows Platform (UWP) App with Visual Studio and C# | Microsoft Docs
UWP uses .NET Native for release build, which compiles to machine code
Microsoft .NET - .NET and Universal Windows Platform Development | Microsoft Docs 2015; custom-build configuration for debugging .NET Native
API
Windows UWP Namespaces - Windows UWP applications | Microsoft Docs
Windows.UI.Xaml.Controls
Windows.UI.Xaml.Controls Namespace - Windows UWP applications | Microsoft Docs
React Native for Window & Mac
Blog · React Native for Windows & Mac
microsoft/react-native-windows: A framework for building native Windows apps with React.
Getting Started · React Native for Windows & Mac
Sample apps/Toolkit
microsoft/Windows-universal-samples: API samples for the Universal Windows Platform.
microsoft/WindowsTemplateStudio: Windows Template Studio quickly builds a UWP app, using a wizard-based UI to turn your needs into a foundation of Windows 10 patterns and best practices.
Van Arsdel Sample App Released! - Windows Developer Blog
Microsoft.Toolkit.Uwp.UI
The Windows Community Toolkit - YouTube
windows-toolkit/WindowsCommunityToolkit: The Windows Community Toolkit is a collection of helper functions, custom controls, and app services.
Windows Community Toolkit Documentation - Windows Community Toolkit | Microsoft Docs
Telerik.UI.for.UniversalWindowsPlatform
Getting Started with Telerik UI for UWP
telerik/UI-For-UWP: This repo contains the source code for Telerik UI for Universal Windows Platform (UWP), which includes 20+ UI controls for developers building UWP applications.
Adaptive UI for building Windows 10 apps - UI for UWP
What's Next for Telerik UI for UWP - YouTube
Runtime
this seems to be a .NET Native build step used in Visual Studio
UWP runs on .NET Core (and .NET Native)
By adding the meta package Microsoft.NETCore.UniversalWindowsPlatform
dotnet/README.md at master · microsoft/dotnet
Web Request
httpclient
common function
examples
Visual Layer
"CSS" of XAML, allows custom draw components
Visual Layer - UWP applications | Microsoft Docs
Interop between XAML and the Visual Layer - Windows Developer Blog
Animations with the Visual Layer - Windows Developer Blog
Background Task
Guidelines for background tasks - UWP applications | Microsoft Docs
Support your app with background tasks - UWP applications | Microsoft Docs
In-process and out-of-process variant
Respond to Triggers (like Andriod's Intent)
30s execution time limitation
Windows-universal-samples/Samples/BackgroundTask at master · microsoft/Windows-universal-samples
WPF
From a 1000-meter view, you can think of WPF as a rich layer over DirectX and Windows Forms as thinner layer over GDI Plus.
Windows Presentation Foundation (WPF) for .NET Core documentation | Microsoft Docs
What is Windows Presentation Foundation - WPF | Microsoft Docs
Hello World app with WPF in C# - Visual Studio | Microsoft Docs
Welcome - The complete WPF tutorial
Top Features Of Windows Presentation Foundation (WPF)
Events - WPF | Microsoft Docs
Layout - WPF | Microsoft Docs
Styles and templates - WPF | Microsoft Docs
dotnet/wpf: WPF is a .NET Core UI framework for building Windows desktop applications.
IAmTimCorey - YouTube
Intro to WPF: Learn the basics and best practices of WPF for C# - YouTube
Graphics rendering overview - WPF .NET Framework | Microsoft Docs
3D Graphics Overview - WPF .NET Framework | Microsoft Docs
Animation Overview - WPF .NET Framework | Microsoft Docs
A Critical Deep Dive into the WPF Rendering System | Jer's Hacks
How to: Render on a Per Frame Interval Using CompositionTarget - WPF .NET Framework | Microsoft Docs
API
Microsoft.Toolkit.Wpf.UI
Microsoft.Toolkit.Wpf.UI.Controls Namespace | Microsoft Docs
System.Windows.Controls
System.Windows.Controls Namespace | Microsoft Docs
Navigation
NavigationService Class (System.Windows.Navigation) | Microsoft Docs
Navigation with MVVM | Rachel Lim's Blog
Navigating between views in WPF / MVVM - technical-recipes.com
NavigationService in MVVM Light V5 | Around and About .NET World
Everything about implementing Back Navigation In UWP App
Virtualization
Optimize control performance - WPF .NET Framework | Microsoft Docs
XAML Anti-Patterns: Virtualization
VirtualizingStackPanel Class (System.Windows.Controls) | Microsoft Docs
ListView Class (System.Windows.Forms) | Microsoft Docs
Sample apps/Toolkit
Material Design In XAML depends on MahApps.Metro
MaterialDesignInXAML/MaterialDesignInXamlToolkit: Google's Material Design in XAML & WPF, for C# & VB.Net.
Home · MaterialDesignInXAML/MaterialDesignInXamlToolkit Wiki
Keboo/MaterialDesignInXaml.Examples: A collection of small samples using MaterialDesignInXaml.
Keboo/ShowMeTheXAML: A WPF component making it easy to show the corresponding XAML for WPF custom styles and controls required by "Material Design In XAML"
c# - The name "XamlDisplay" does not exist in the namespace - Stack Overflow
C# and WPF - Material Design in Xaml - YouTube
Material Design In XAML Toolkit An Introduction - YouTube
MahApps.Metro Documentation
MahApps/MahApps.Metro: A framework that allows developers to cobble together a better UI for their own WPF applications with minimal effort.
firstfloorsoftware/mui: Modern UI for WPF
samples/wpf at master · dotnet/samples
UWP features in WPF apps
Modernize your desktop apps for Windows | Microsoft Docs
Desktop Applications with XAML. Part 2: Desktop Bridge – csharp.christiannagel.com use WinRT API
Modernizing Desktop Apps on Windows 10 with .NET Core 3.0 and much more | Microsoft Build 2018 | Channel 9
Desktop Applications with XAML. Part 3: XAML Islands – csharp.christiannagel.com
UWP controls in desktop apps | Microsoft Docs XAML islands
XAML Islands - A deep dive - Part 1 - Windows Developer Blog
XAML Islands - A deep dive - Part 2 - Windows Developer Blog
windows-toolkit/Microsoft.Toolkit.Win32: This repository contains all controls for WPF and WinForms to simplify and demonstrate usage of UWP controls
How to Bring Your Classic Desktop App to the New Millennium
Getting Started with XAML Islands: Host UWP Control in WPF
Getting Started with XAML Islands: Host UWP Control in WPF
Modernize your desktop app using the Visual layer | Microsoft Docs
Using the Visual Layer with WPF | Microsoft Docs
XAML
XAML are compiled to .Net code.
XAML overview - WPF .NET | Microsoft Docs
UWP uses WindowsXamlManager Class (Windows.UI.Xaml.Hosting) - Windows UWP applications | Microsoft Docs
XAML Island uses DesktopWindowXamlSource Class (Windows.UI.Xaml.Hosting) - Windows UWP applications | Microsoft Docs
XAML platform - UWP applications | Microsoft Docs
Desktop Applications with XAML. Part 1: UWP – csharp.christiannagel.com
microsoft/microsoft-ui-xaml: Windows UI Library: the latest Windows 10 native controls and Fluent styles for your applications
microsoft/Xaml-Controls-Gallery: This app demonstrates the controls available in the Fluent Design System and Xaml.
microsoft/InventorySample: Sample UWP application for LOB scenarios
Design and UI for UWP - UWP applications | Microsoft Docs
Tutorials on various controls
XAML Spy Express edition is free
Uno Playground XAML edit on Web
A significant update to the XAML Designer | Visual Studio Blog
<!-- Styling with Markup extensions -->
<Window x:Class="index.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="100" Width="300">
<Window.Resources>
<SolidColorBrush x:Key="MyBrush" Color="Gold"/>
<Style TargetType="Border" x:Key="PageBackground">
<Setter Property="BorderBrush" Value="Blue"/>
<Setter Property="BorderThickness" Value="5" />
</Style>
</Window.Resources>
<Border Style="{StaticResource PageBackground}">
<StackPanel>
<TextBlock Text="Hello" />
</StackPanel>
</Border>
</Window>
Handle mouse event
Use microsoft/XamlBehaviorsWpf in XAML rather than Code Behind
Open Sourcing XAML Behaviors for WPF - .NET Blog
Use Microsoft.Xaml.Behaviors.Wpf instead the System.Windows.Interactivity · Issue #3400 · MahApps/MahApps.Metro
<Grid>
<Rectangle x:Name="Color01" Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="100" Margin="10,29,0,0" Stroke="Black" VerticalAlignment="Top" Width="100" MouseDown="Color_MouseDown">
<behaviors:Interaction.Triggers>
<behaviors:EventTrigger EventName="MouseLeftButtonDown">
<behaviors:InvokeCommandAction Command="{Binding MouseDownCommand}"/>
</behaviors:EventTrigger>
</behaviors:Interaction.Triggers>
</Rectangle>
</Grid>
<Button Style="{StaticResource MaterialDesignToolButton}" Width="24" Height="24" Padding="0" ToolTip="{DynamicResource ResourceKey=DeleteCase}" Click="DeleteCase_Click" Foreground="Orange">
<Button.IsEnabled>
<MultiBinding Converter="{StaticResource IsDeleteEnabledConv}">
<Binding Path="DataContext.OfflinePredictionRunning" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Page}}" />
<Binding Path="CaseId" UpdateSourceTrigger="PropertyChanged"/>
<Binding Path="DataContext.CaseRunningOfflinePrediction" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Page}}"/>
</MultiBinding>
</Button.IsEnabled>
<materialDesign:PackIcon Kind="TrashCan" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Button>
private void Color_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e) {}
Data binding
Data binding - UWP applications | Microsoft Docs
Data binding in depth - UWP applications | Microsoft Docs
Binding markup extension' - UWP applications | Microsoft Docs
UWP Basics | Microsoft Press Store
Part 4. Data Binding Basics - Xamarin | Microsoft Docs
Data binding overview - WPF .NET | Microsoft Docs
UWP Binding vs. XBind - CodeProject
UWP Basics | Microsoft Press Store
UWP Binding vs. XBind - CodeProject
PropertyChangedEventHandler Delegate (System.ComponentModel) | Microsoft Docs
PropertyChangedEventHandler Delegate (Windows.UI.Xaml.Data) - Windows UWP applications | Microsoft Docs
MVVM
Complexity:
- Code behind (not MVVM)
- MVVM Basic (
System.ComponentModel
in .NET Core, lacking in features) - MVVM Toolkit (cross platform toolkit)
- MVVM Light (good compromise between complexity and features, Windows specific)
- Prism (originally Microsoft Project, not much UWP tutorial, API ranges from simple to advanced)
- Caliburn.Micro (complex and disorientating; too much magic)
leave the XAML code behind (mostly) empty, use MVVM patterns
The Model-View-ViewModel Pattern - Xamarin | Microsoft Docs
Master the Basics of MVVM for Building WPF Applications - IntelliTect
Rockford Lhotka - Using the MVVM pattern requires a framework
wpf - How to choose NOT to use a framework (Caliburn.Micro, etc.) in a given MVVM application? - Software Engineering Stack Exchange
The Evolving Infrastructure of .NET Core | .NET Blog
.NET MAUI for Beginners - YouTube
MVVM for Beginners: Model-View-ViewModel Architecture for Xamarin.Forms, .NET MAUI, WPF, UWP, & More - YouTube code-behind -> ViewModel, BindingContext
and DataType
in XMAL
Essentials Of MVVM 💻📱🖥️
The Big MVVM Template - CodeProject
Build high-performance node-based editors quickly | Nodify
Caliburn.Micro · 'Xaml made easy' · Caliburn.Micro
Documentation · Caliburn.Micro
MVVM Toolkit
Introduction to the MVVM Toolkit - .NET Community Toolkit | Microsoft Learn cross platform
Announcing .NET Community Toolkit 8.0! MVVM, Diagnostics, Performance, and more! - .NET Blog
Source Generators | Microsoft Learn
Support for source generators · Issue #4215 · OmniSharp/omnisharp-vscode
CommunityToolkit/dotnet: .NET Community Toolkit is a collection of helpers and APIs that work for all .NET developers and are agnostic of any specific UI platform. The toolkit is maintained and published by Microsoft, and part of the .NET Foundation.
CommunityToolkit/MVVM-Samples: Sample repo for MVVM package
MVVM Source Generators: Never Write MVVM Boilerplate Code Again! - YouTube scratch -> MVVM Toolkit
What is the MVVM pattern, What benefits does MVVM have? - YouTube code-behind -> MVVM Toolkit
Windows Community Toolkit, Windows Only
Introduction to the MVVM Toolkit - Windows Community Toolkit | Microsoft Docs
CommunityToolkit/WindowsCommunityToolkit: The Windows Community Toolkit is a collection of helpers, extensions, and custom controls. It simplifies and demonstrates common developer tasks building .NET apps with UWP and the Windows App SDK / WinUI 3 for Windows 10 and Windows 11. The toolkit is part of the .NET Foundation.
Draft docs for the Microsoft.Toolkit.Mvvm package
Introduction to the MVVM Toolkit - Windows Community Toolkit | Microsoft Learn
Putting things together - Windows Community Toolkit | Microsoft Docs
Migrating from MvvmLight - Windows Community Toolkit | Microsoft Docs
Windows Community Toolkit Sample App - Microsoft Store Applications
C# MVVM Toolkit Demo - CodeProject
Prism
Introduction to Prism | Prism uses BindableBase
as model base class
PrismLibrary/Prism: Prism is a framework for building loosely coupled, maintainable, and testable XAML applications in WPF, Windows 10 UWP, and Xamarin Forms.
Implementing the MVVM Pattern Using the Prism Library for WPF | Prism
Prism: Patterns For Building Composite Applications With WPF | Microsoft Docs
Getting Started: MVVM Pattern Using Prism Library in WPF
Brian Lagunas - Microsoft Author | Pluralsight
Flux/Reactive
.NET Flux Toolkit Nuget Announcement – Alex Dunn
SuavePirate/FluxToolkit: A super simple library to enable the implementation of Flux in .NET Applications such as Xamarin, UWP, WPF, and more.
The More Things Change - bitquabit React is Windows 1.0
ReactiveUI - An advanced, composable, reactive model-view-viewmodel framework
Building Cross-Platform Reactive .NET Apps - Artyom V. Gorchakov - Medium
Reactive MVVM Pattern On The .NET Platform - Artyom V. Gorchakov - Medium
MVVM Light
DEPRECATED, use
mvvm-toolkit
MVVM Light Toolkit
MVVM Light Toolkit - Documentation
Getting Started With MVVM Light With WPF
WPF MVVM Introduction
Start with Galasoft MVVM Light Toolkit
Getting Started With MVVM Light With WPF
MVVM Light Toolkit Example
MVVM - IOC Containers and MVVM | Microsoft Docs
MVVM - Messenger and View Services in MVVM | Microsoft Docs
MVVM - Maximizing the Visual Designer’s Usage with Design-Time Data | Microsoft Docs
MVVM - Commands, RelayCommands and EventToCommand | Microsoft Docs
MVVM - Multithreading and Dispatching in MVVM Applications | Microsoft Docs
MVVM - The MVVM Light Messenger In-Depth | Microsoft Docs
MVVM Light – Code Tips
WinUI
Windows UI Library, controls and Fluent styles for applications. WinUI 3 aims to be framework independent.
Windows UI Library (WinUI) - Windows apps | Microsoft Docs
Windows UI Library Roadmap WinUI2 and WinUI 3
Windows UI Library (WinUI) - Windows apps | Microsoft Docs
Windows.UI.Xaml.Controls Namespace - Windows UWP applications | Microsoft Docs
WinUI 2
Microsoft.UI.XAML
Windows UI library - Windows UWP applications | Microsoft Docs
Getting started with the Windows UI library - Windows UWP applications | Microsoft Docs UWP+WinUI 2
WinUI 3
Windows UI Library (WinUI) 3 - Windows apps | Microsoft Docs
microsoft/Xaml-Controls-Gallery at winui3alpha
Building Modern & Performant Desktop Apps—Is WinUI 3.0 the Way to Go?
WinUI 3.0 Developer Experience and Tooling - Input Needed
How Does .NET 5 Do XAML? By Decoupling It from Windows with WinUI 3, C#/WinRT and More -- Visual Studio Magazine
WinUI 3 Preview 3 | Windows Dev
WinUI 3 is the native UI platform component that ships with the Windows App SDK (completely decoupled from Windows 10 and later SDKs).
WinUI 3 expand the scope of WinUI to include the full Windows 10 native UI platform, which will now be fully decoupled from the UWP SDK.
So WinUI 3 + WPF ≈ UWP windows PC application
To start using WinUI 3.0 developers must:
- Add the WinUI reference to their solution
- Update all names spaces in code behind to use the latest Microsoft. (
Windows.UI
-->Microsoft.UI
) - Update control references to ensure WinUI controls and not SDK controls are being loaded
- Test and verify
Winforms
dotnet/winforms: Windows Forms is a .NET Core UI framework for building Windows desktop applications. .NET wrapper around Win32 API
Media
NuGet Gallery | FFMpegCore 1.3.3
video - DirectShow, Media Foundation, DXVA, what? - Stack Overflow
About Media Foundation - Win32 apps | Microsoft Docs
.NET Core Image Processing | .NET Blog
ImageSharp Introduction
SixLabors/ImageSharp: A modern, cross-platform, 2D Graphics library for .NET
mono/SkiaSharp: SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library. It provides a comprehensive 2D API that can be used across mobile, server and desktop models to render images.
SkiaSharp Namespace | Microsoft Docs
FFMpeg
NuGet Gallery | FFMediaToolkit 2.2.1
radek-k/FFMediaToolkit: FFMediaToolkit is a cross-platform video decoder/encoder library for .NET that uses FFmpeg native libraries. support streams, uses FFmpeg.AutoGen
Ruslan-B/FFmpeg.AutoGen: FFmpeg auto generated unsafe bindings for C#/.NET and Mono.
Accord.Video.FFMPEG Namespace support streams
Extract Frames from Video C# - Stack Overflow
CLI builders, for file based transcoding
rosenbjerg/FFMpegCore: A great way to use FFMpeg encoding when writing video applications, client-side and server-side. It has wrapper methods that allow conversion to all web formats: MP4, OGV, TS and methods of capturing screens from the videos.
AydinAdn/MediaToolkit: A .NET library to convert and process all your video & audio files.
Image Rendering
XAML ImageElement
must happen in UI thread through Dispatcher
All renderings in XAML are asynchronous
var task = _imageElement.Dispatcher.RunAsync(CoreDispatcherPriority.Normal,
async () =>
{
with var latestBitmap = getBitmap();
await imageSource.SetBitmapAsync(latestBitmap);
}
);
Graphics rendering overview - WPF | Microsoft Docs
Windows-universal-samples/Samples/CameraFrames/cs at master · microsoft/Windows-universal-samples · GitHub
Use OpenCV with MediaFrameReader - UWP applications | Microsoft Docs
Process media frames with MediaFrameReader - UWP applications | Microsoft Docs
opencvsharp/BitmapConverter.cs at master · shimat/opencvsharp · GitHub
https://stackoverflow.com/questions/21555394/how-to-create-bitmap-from-byte-array
https://docs.microsoft.com/en-us/dotnet/api/system.drawing.bitmap?view=dotnet-plat-ext-3.1
https://docs.microsoft.com/en-us/dotnet/api/system.drawing.image?view=dotnet-plat-ext-3.1
BitmapImage Class (Windows.UI.Xaml.Media.Imaging) - Windows UWP applications | Microsoft Docs
DirectX Interop
FallFury - A DirectX/C++/XAML Tutorial | Channel 9 2013
Direct3D Rendering Cookbook 2014
DirectX graphics and gaming - Win32 apps | Microsoft Docs
DirectX and XAML interop - UWP applications | Microsoft Docs
Module 3. Windows Graphics - Win32 apps | Microsoft Docs
Direct2D - Win32 apps | Microsoft Docs
DirectWrite - Win32 apps | Microsoft Docs
Avalonia/src/Windows/Avalonia.Direct2D1 at master · AvaloniaUI/Avalonia · GitHub
DigitalRune/Source/DigitalRune.Graphics/Interop at master · DigitalRune/DigitalRune · GitHub
Profiling DirectX Apps - Win32 apps | Microsoft Docs
Host Direct3D9 content in WPF | Microsoft Docs
WPF and Direct3D9 interop | Microsoft Docs
D3DImage Class (System.Windows.Interop) | Microsoft Docs which is a System.Windows.Media.ImageSource
SwapChain is not usable in WPF application, where the framework is doing the presentation
Introduction to D3DImage - CodeProject
How to render by using a Direct2D device context - Win32 apps | Microsoft Docs to DX11 runtime
Surface Sharing Between Windows Graphics APIs - Win32 apps | Microsoft Docs
Drawing with Direct2D - Win32 apps | Microsoft Docs
c++ - Direct2D window black when not in focus - Stack Overflow
Handle device removed scenarios in Direct3D 11 - UWP applications | Microsoft Docs
Home | SharpDX
sharpdx/SharpDX-Samples: Official repository for all SharpDX Samples
NuGet Gallery | SharpDX.MediaFoundation 4.2.0
Posts tagged SharpDX - Johan Falk
WPF 使用 SharpDx 渲染博客导航
WPF 使用 SharpDX hWnd rendering
WPF 使用 SharpDX 在 D3DImage 显示 Control Rendering
WPF 使用封装的 SharpDx 控件
SlimDX/slimdx: Automatically exported from code.google.com/p/slimdx DEPRECATED
RichardsSoftware.net - SlimDX DirectX 11 Tutorials
NuGet Gallery | MediaFoundation 3.1.0
Originally Media Foundation .NET
Of Itself So - Tanta, Windows Media Foundation Sample Projects
OfItselfSo/Tanta: This project provides Sample Projects which can assist people in developing applications for Windows Media Foundation in the C# language.
Windows_Media_Foundation_Getting_Started_CSharp.pdf
Windows.Ui.Xaml.Media.Dxinterop.h header - Win32 apps | Microsoft Docs
smourier/DirectN: Direct interop Code for .NET : DXGI, WIC, DirectX 9 to 12, Direct2D, Direct Write, Direct Composition, Media Foundation, WASAPI, CodecAPI, GDI, Spatial Audio, DVD, Windows Media Player, UWP DXInterop, etc.
microsoft/Win2D: Win2D is an easy-to-use Windows Runtime API for immediate mode 2D graphics rendering with GPU acceleration. It is available to C#, C++ and VB developers writing apps for the Windows Universal Platform (UWP). It utilizes the power of Direct2D, and integrates seamlessly with XAML and CoreWindow.
Introduction
Debugging
UWP App Diagnostics - Windows Developer Blog
Dependency Walker (depends.exe) Home Page ldd
Debugging WPF Applications - WPF Debugging and Performance Succinctly Ebook
Fix NonPaged Memory Leak | Poolmon - Windows 10 And Server | Easy Steps » LEARN Inside
windows - What are "Commited Memory", "Cached", "Paged", "Not-paged pool" & How They are Different with "In-Use Memory" - Super User
Huge Memory Usage in Non-Paged Pool in Windows | Windows OS Hub
PoolMonX/pooltag.txt at master · zodiacon/PoolMonX
Ask The Performance Team - Microsoft Tech Community
Fundamentals of garbage collection | Microsoft Docs
Cleaning up unmanaged resources | Microsoft Docs
PerfView Tutorial | Channel 9
microsoft/perfview: PerfView is a CPU and memory performance-analysis tool
Luke Stackwalker home page call graph, profiler
How I cut GTA Online loading times by 70%
Download Debug Diagnostic Tool v2 Update 3.1 from Official Microsoft Download Center
How to Use Debug Diagnostic Tool to Collect Dumps on Hanging or Crashing Process in PowerCenter - YouTube
x64dbg
glmcdona/Process-Dump: Windows tool for dumping malware PE files from memory back to disk for analysis.
WinDbg - Wikiwand
Download Debugging Tools for Windows - WinDbg - Windows drivers | Microsoft Docs
Getting Started with WinDbg (User-Mode) - Windows drivers | Microsoft Docs
Collecting User-Mode Dumps - Win32 apps | Microsoft Docs
TsudaKageyu/minhook: The Minimalistic x86/x64 API Hooking Library for Windows
Testing
dotnet test command - .NET Core CLI | Microsoft Docs
c - Is there a good Valgrind substitute for Windows? - Stack Overflow
xUnit
Home > xUnit.net
Getting started: .NET Core with command line > xUnit.net
Getting started: Multi-targeting with non-Windows OSes > xUnit.net
# target .NET Core, not .NET Standard
dotnet add package xunit xunit.runner.visualstudio
Define tests with [Fact]
attribute
NUnit
MSTest
microsoft/testfx-docs: Docs for MSTest V2 test framework
Use Microsoft.VisualStudio.TestTools.UnitTesting in unit tests - Visual Studio | Microsoft Docs
Get started with unit testing - Visual Studio | Microsoft Docs
MSIX
MSIX documentation - MSIX | Microsoft Docs
MSIX: Package desktop apps for Windows 10. Replace outdated installers. | Tabs vs Spaces | Channel 9
Building an MSIX package from your code overview - MSIX | Microsoft Docs
Packaging Universal Windows apps for Windows 10 | Microsoft Docs
Package a desktop app from source code using Visual Studio - MSIX | Microsoft Docs
Packaging MSIX apps - MSIX | Microsoft Docs
WinRT API
Windows Runtime - Wikiwand
C++/WinRT - UWP applications | Microsoft Docs
Enhancing Non-packaged Desktop Apps using Windows Runtime Components - Windows Developer Blog
Microsoft paves the way to Windows APIs | InfoWorld
Using WinML in .NET5 | #ifdef Windows
- net5.0-windows10.0.17763.0 (Windows 10, version 1809)
- net5.0-windows10.0.18362.0 (Windows 10, version 1903)
- net5.0-windows10.0.19041.0 (Windows 10, version 2004)
Rust
Overview of developing on Windows with Rust | Microsoft Docs
microsoft/windows-rs: Rust for Windows
Rust for Windows, and the windows crate | Microsoft Docs
Build more secure software with Rust for Windows | InfoWorld
COM
Win32 and COM APIs for UWP apps - Windows UWP applications | Microsoft Docs
core-setup/COM-activation.md at master · dotnet/core-setup
samples/core/extensions/ExcelDemo at master · dotnet/samples COM Client
samples/core/extensions/COMServerDemo at master · dotnet/samples