首页
学习
活动
专区
工具
TVP
发布

林德熙的博客

专栏作者
2031
文章
2117032
阅读量
60
订阅数
dotnet C# 使用 Win32 函数获取用户下载文件夹的路径的方法
大家都知道,在 dotnet 里面的可以使用 Environment.GetFolderPath 方法配合 Environment.SpecialFolder 枚举列出当前运行环境下的一些特殊文件夹。然而 SpecialFolder 枚举不包含对 Download 下载文件夹的枚举值,如咱需要获取用户当前的下载文件夹,需要使用 Win32 方法来辅助获取
林德熙
2024-04-13
880
dotnet 修复 GitHub Action 构建过程提示 NETSDK1127 错误
本文告诉大家,如何修复 GitHub Action 构建过程提示 error NETSDK1127: The targeting pack Microsoft.WindowsDesktop.App.WindowsForms is not installed. Please restore and try again. 错误
林德熙
2024-01-18
1020
WPF 已知问题 RadioButton 指定 GroupName 后关闭窗口可能导致无法选中
本文记录一个 WPF 已知问题,当 WPF 的 RadioButton 指定 GroupName 且将 IsChecked 状态绑定到 ViewModel 上,将包含以上控件的代码的窗口显示两个,接着关闭其中一个。此时可以看到依然开着的窗口的 RadioButton 控件无法正确在用户界面上点击选中
林德熙
2023-11-28
1190
github 解决推拉代码提示 REMOTE HOST IDENTIFICATION HAS CHANGED 失败
本文记录最近 github 推送或拉取代码时提示 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 而失败的解决方法
林德熙
2023-04-07
1.4K0
MAUI 自定义绘图入门
在2022的5月份,某软正式发布了 MAUI 跨平台 UI 框架。我本来想着趁六一儿童节放假来写几篇关于 MAUI 入门的博客,可惜发现我不擅长写很入门的博客。再加上 MAUI 似乎是为了赶发布日期而发布,只能勉强说能开发了,能用了。于是我就来开始假定大家是一个成熟的 MAUI 开发者了,开始进入复杂控件自绘的自定义绘图渲染的博客
林德熙
2022-08-12
9260
SkiaSharp 渲染输出 SVG 文件
谷歌的 Skia 的一个卖点就是提供了完美的 SVG 的支持,包括输入和输出。输入指的是给一张 SVG 图片,将这个 SVG 渲染出来。输出就是将输出画面保存为 SVG 格式的图片。自然 SkiaSharp 是 Skia 的封装,也就带上了此功能。本文将告诉大家如何在 SkiaSharp 里面设置画面输出为 SVG 图片,使用 SkiaSharp 制作和编辑 SVG 图片
林德熙
2022-08-12
1.5K0
UWP 从文件 StorageFile 转 SoftwareBitmap 图片方法
本文告诉大家如何在 UWP 从 文件 StorageFile 转 SoftwareBitmap 图片的方法
林德熙
2022-08-12
3220
WPF 调试依赖属性变更方法
在 WPF 里面,所有的依赖属性都有带通知的功能,通过带通知的功能,可以在通知里加上断点,通过调用堆栈了解是哪个模块调用的
林德熙
2022-08-12
3470
dotnet 修复在 Linux 上使用 SkiaSharp 提示找不到 libSkiaSharp 库
本文告诉大家如何简单修复在 Linux 上使用 SkiaSharp 提示找不到 libSkiaSharp 库
林德熙
2022-08-12
3.5K0
dotnet 读 WPF 源代码笔记 为什么自定义的 UserControl 用户控件不能跨程序集继承
从设计上,用户控件 UserControl 就不是一个合适用来多次继承的类型,更不要说进行跨程序集继承自定义的 UserControl 用户控件。对于大部分的用户控件来说,都是采用组合现有的控件来实现的功能,本身应该被当成一个模块来进行使用。在 WPF 框架里面,从框架层阻止了开发者对自定义的 UserControl 用户控件跨程序集继承的逻辑,一旦尝试进行跨程序集继承,将在运行时抛出异常。本文将从源代码的角度告诉大家 WPF 框架是如何阻止跨程序集继承
林德熙
2022-08-12
9100
dotnet 6 使用 Obfuscar 进行代码混淆
本文来安利大家 Obfuscar 这个好用的基于 MIT 协议开源的混淆工具。这是一个非常老牌的混淆工具,从 2014 年就对外分发,如今已有累计 495.5K 的 nuget 下载量。而且此工具也在不断持续迭代更新,完全支持 dotnet 6 版本,对 WPF 和 WinForms 等等的支持也是非常好,支持多个不同混淆方式和等级的配置,支持混淆之后生成符号文件。本文将来告诉大家如何使用此混淆工具,以及此工具能达成的效果和此工具混淆的原理
林德熙
2022-08-12
1.6K0
支持 dotnet 6 的 dnSpy 神器版本
官方的 dnSpy 在 2021 时,由于某些吃瓜的原因 wtfsck 将 dnSpy 给 Archived 掉,在大佬被哄好之前,预计是不再更新。最新官方版本对 dotnet 6 的支持较弱,对于很多 dotnet 6 应用都无法成功调试,附加调试上去将会让应用卡住。好在 dnSpy 是开源的,也刚好 lsj 大佬改得动,于是改了一个支持 dotnet 6 的版本
林德熙
2022-08-12
1.4K0
用 SetWindowPos 方法设置一个停止响应的窗口将卡调用方
我使用 User32 的 SetWindowPos 方法去设置一个跨进程的窗口,这个窗口是停止响应的,将让调用的 SetWindowPos 方法卡住,不继续执行逻辑。通过堆栈分析是卡在 NtUserSetWindowPos 方法上,调用 SetWindowPos 方法不返回
林德熙
2022-08-12
6990
WPF 切换主题使用 luna 复古版本
今天在 lsj 说他准备优化 WPF 的程序集时,准备删除 luna 等程序集时,找到了一段有趣的注释,发现在 WPF 里面可以通过一些有趣的反射的方法修改主题,让应用使用 luna 的主题,实现复古的界面
林德熙
2022-08-12
4950
WPF 已知问题 资源字典树引用与资源寻找的坑
大家都知道,在 WPF 里面,可以让资源字典合并其他资源字典,从而定义出资源字典引用树。然而在资源字典引用树里面,如果没有理清关系,将可以作出一个超级复杂的引用关系网。如果在性能优化中,将网断开部分,可能就会出现找不到资源的情况。本文将告诉大家 WPF 的资源字典树在引用和寻找关系上的坑
林德熙
2022-08-12
7520
WPF 开源二维绘画小工具 GeometryToolDemo 项目
这是一个演示 WPF 进行二维绘画的小工具 Demo 项目,基于 MIT 协议在 GitHub 上完全开源
林德熙
2022-08-12
2780
WPF 获取是哪个进程占用了文件
例如有文件是 file 字符串表示的文件,通过在下文定义的 FileUtil 的 WhoIsLocking 方法可以获取占用此文件的进程,如下面代码
林德熙
2022-08-12
5500
WPF 获取 MediaContext 的方法
本文告诉大家如何通过反射获取 MediaContext 对象。在 WPF 里面,通过 MediaContext 对象可以用来控制渲染
林德熙
2022-08-12
2910
Win32 使用 SetCurrentProcessExplicitAppUserModelID 关联多个进程 在任务栏合并 WPF 多进程窗口
我有一个 WPF 应用,这是一个绿色软件,会被用户拷贝这和那的文件夹,我期望在多个文件夹里面打开的进程,在任务栏里面都可以将窗口进行合并。使用 Win32 的 Shell32.dll 提供的 SetCurrentProcessExplicitAppUserModelID 可以显设置应用的 Application User Model ID 从而让在多个不同的路径打开的应用,使用相同的 Id 而在任务栏进行合并窗口
林德熙
2022-08-12
6690
WPF 适合入门阅读的开源项目 SeeGit 图形化 Git 历史记录
本文来安利大家一个不错的开源项目,这个开源项目整体写的不错,也有用到 MVVM 框架,项目组织以及命名等都还行,功能也实现完全,适合入门级阅读
林德熙
2022-08-12
4600
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档