lindexi

林德熙 - 微软最具价值专家和 .NET 基金会成员

林德熙

解决麒麟 Kylin 系统提示 IP 冲突 无法正常连接到网络

麒麟 Kylin 系统插入网线但没有网,通知中心里面有网络设置工具的网络提示消息,消息内容是 IP 冲突,无法正常连接到网络

dotnet X11 的多屏触摸行为测试

故事的背景是我在给 Avalonia 加上触摸尺寸的支持时,代码审查过程中大佬提出了在多屏上的 X11 行为问题,为此我找了两个触摸屏进行测试 X11 的多屏触摸行为。由于我的设备有限,本文只记录我所测试到的行为

Roslyn 分析器 INamedTypeSymbol 的 AllInterfaces 包含类型全部继承接口

本文将记录和测试 Microsoft.CodeAnalysis.INamedTypeSymbol 的 AllInterfaces 属性能获取的指定类型的接口范围

dotnet 打包 NuGet 的配置属性大全整理

本文整理 dotnet 打包 CBB 组件为 NuGet 包时可以使用的配置的各个属性

dotnet C# 做一个压缩包和解压缩出来的文件夹内容对比工具

我需要判断一个由某个压缩包文件解压缩出来的文件夹里面的文件内容,是否和压缩包里面记录的相同,于是就写了这个工具

dotnet C# 使用 System.IO.Hashing 库进行 Crc32 计算

本文和大家介绍 dotnet 官方提供的 System.IO.Hashing 库进行 Crc32 计算

WPF 探索 Skia 的竖排文本渲染的字符高度

本文记录我探索 Skia 做竖排文本渲染过程中的字符高度计算方法

解决 BT 工具连接数过多导致无网速问题

使用 BT 工具的时候,如果不小心开了超量的连接数,即在退出 BT 工具之后,依然存在很多连接记录,导致网速特别差的问题,即使在同个局域网进行传输,也能感受到网速特别差

dotnet C# 判断应用程序在 Wine 里运行的方法

本文将记录如何在 C# dotnet 代码里面判断当前进程运行在 Wine 里面

Avalonia 界面效果 滚动的渐变矩形边框

本文将和大家介绍一个 Avalonia 界面效果,制作一个滚动的渐变矩形边框

Avalonia 界面效果 三个圆实现模糊界面动效背景

本文将和大家介绍一个 Avalonia 动效界面效果,由三个圆带模糊效果实现的模糊界面动效背景,适合用在各种 AIGC 主题的应用里面

简单实现 sln 和 slnx 两个解决方案文件格式互转

本文将告诉大家如何通过 Microsoft.VisualStudio.SolutionPersistence 实现 sln 和 slnx 格式文件的相互转换

git 已知问题 命令行调用 git 时可能存在环境变量投毒问题

本文记录一个我在 git 钩子唤起一个 C# dotnet 的进程,在此进程里面使用 Process.Start 执行 git 命令的时候,被 git 钩子环境变量投毒的问题

开源实战

本文记录我参与的开源项目

Avalonia 已知问题 继承滚动条将让里层控件无法获得无穷大空间

本文记录 Avalonia 的一个已知问题,如果有代码里面编写一个类型继承 ScrollViewer 类型,然后这个类型里面啥都不做。那将会导致所有放在此滚动条里面的控件无法获取无穷大的空间,其宽高无法撑开,被限定为上层容器尺寸

Roslyn 分析器已知问题 传递项目属性时将忽略分号之后的内容

本文记录 Roslyn 分析器、源代码生成器的已知问题,通过CompilerVisibleProperty 传递值时,所有在 ;# 和换行符之后的字符都会被忽略

WPF 已知问题 某些设备上的应用在 WindowChromeWorker 抛出 System.OverflowException 异常

准确来说,这个不算是 WPF 的问题,而是系统等的问题。在某些设备上的使用了 WindowChrome 功能的 WPF 应用,将在运行过程,在 WindowChromeWorker 类里面抛出 System.OverflowException 异常。核心原因是这些设备是 x64 设备,运行的 x64 的 WPF 应用程序,在消息循环里面传入的 lParam 是一个 x64 的指针,但在 WPF 里面使用 ToInt32 方法进行转换,刚好此 x64 的指针超过 int 的范围,从而抛出异常

dotnet Cli sdk 什么是 Terminal Logger 以及如何禁用此功能

在 dotnet 9 的 SDK 版本里面,将 Terminal Logger 功能设置为默认。这是一个令我烦恼的功能。我将在这篇博客里面和大家介绍这是一个什么功能,以及如何将此功能禁用

非技术 做饭实验记录

本文记录我的做饭实验,包括煮什么菜和做法

dotnet 在 VisualStudio 一键 F5 启动调试 Roslyn 分析器项目

本文将告诉大家如何在 VisualStudio 里面,一键使用习惯的 F5 键进行快速构建和启动调试 Roslyn 分析器项目

dotnet OpenXML 已知问题 设置 0x0001 等 XML 不合法字符给到标题将在保存时抛出异常

本文记录 OpenXML 的已知问题,在 PackageProperties.Title 等属性上设置字符串包含如 Unicode 编码为 0x0001 等 XML 不合法字符,将在保存写入文件时,抛出 ArgumentException 异常

WPF 启动屏幕键盘

在 Windows 的平板模式下才能自动在获取键盘输入焦点时弹出屏幕键盘,但是 Windows 的屏幕键盘做的粗糙,有时候不会自动开启屏幕键盘,此时需要使用代码辅助

Roslyn 源代码生成器 SourceGenerator 获取代码文件的本地绝对路径

本文告诉大家如何在源代码生成器 SourceGenerator 里面获取代码文件的本地文件的绝对路径

Windows 客户端软件自动更新服务的开发有哪些需求

我在团队里面有接手过 Windows 客户端软件的自动更新模块,这是一个非常庞大的模块,我隔壁有一个团队在专门负责事情。而我需要做的只是去接入而已,在接入的过程中,我也了解到整个自动更新机制需要涉及到的功能

dotnet 在 UNO 里获取 X11 窗口指针的方法

在 UNO 的 5.2 版本,可以使用 X11 平台承载 UNO 应用。此时我需要获取到 UNO 应用的窗口的 X11 窗口指针,如此即可调用 X11 平台相关逻辑对 UNO 窗口执行一些交互

dotnet 6 为什么网络请求不跟随系统网络代理变化而动态切换代理

本文记录在 dotnet 6 的网络和在 .NET Framework 的行为的变更。在 dotnet 6 下,默认的网络请求在系统网络代理变更的时候,是不会动态切换代理的。例如在应用运行进行网络通讯之后,打开 Fiddler 抓包,此时将会发现 Fiddler 抓不到包,只有在应用重启之后才能抓到。或者是开着 Fiddler 抓包,然后退出 Fiddler 之后应用就断网了

WPF 使用 SharpDx 渲染博客导航

我写了很多在 WPF 使用 SharpDx 渲染的博客,但是有小伙伴吐槽说这些博客没有一个好看的顺序,我将所有的 SharpDx 的博客按照顺序放在下面

UWP 开发中,需要知道的1000个问题

本文主要写我开发遇到常(zhi)见(zhang)问题。

dotnet LibGit2Sharp 使用笔记

本文记录我对 LibGit2Sharp 库的使用笔记

dotnet 9 已知问题 默认开启 CET 导致进程崩溃

本文记录 dotnet 9 的一个已知且当前已修问题。默认开启 CET 导致一些模块执行时触发崩溃

dotnet 使用 ColorCode 做代码着色器

本文记录我使用 ColorCode 开源库简单做一个代码着色器

演练 dotnet 使用 函数指针 调用 COM 接口

本文将和大家演练如何在 dotnet 里面使用 函数指针 调用 COM 接口,整个过程没有 COM 封装的存在,其性能非常高,调用非常直接和底层,无中间商赚差价

演练 dotnet 使用 GeneratedComInterface 源代码生成方式调用 COM 接口

本文将提供使用源代码生成方式的 COM 调用。本文例子基于 dotnet 9 框架

dotnet 6 InterpolatedStringHandler 构造函数的 out 参数有什么意义

根据微软的官方文档可以了解到,编写一个自定义的 InterpolatedStringHandler 时,可以在构造方法的参数里面带上一个 out 的布尔参数。本文将来和大家介绍这个布尔参数的作用

WPF 开发

本文:我遇到的WPF的坑