自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lindexi

好多时间打出来代码没有bug

  • 博客(24)
  • 资源 (167)
  • 论坛 (13)
  • 问答 (1)
  • 收藏
  • 关注

原创 win10 uwp 相机的分辨率设置方法

本文来告诉大家如何在 UWP 中修改相机的分辨率设置以及如何使用相机的功能在 UWP 中可以使用 WinRT 提供的 Win10 特有的 API 用来捕获摄像机的内容,支持很多格式的硬件解码,性能会比 Win32 好特别多。我使用了 UWP 版本的和 WPF 基于 DirectShow 的版本进行性能对比发现在使用 WPF 的版本,在我的设备上,大概 CPU 能到百分之十,而完全没有用到 ...

2020-12-31 01:11:30 81

原创 dotnet 集成测试 SmartSql 存在静态量导致多个主机启动提示 Alias 已存在

在集成测试中,我采用单个进程开启多个主机,可以理解为一个用例开启一次主机。但是在我使用到 SmartSql 的功能时,我发现在一个主机关闭之后,再开启下一个主机,会因为使用了相同的别名而提示 SmartSql.Alias:[SmartSql] already exist 错误。本文告诉大家如何解决此问题默认的 dotnet 应用在主机销毁的时候,都会销毁自己的资源。而 SmartSql 没有...

2020-12-29 13:39:49 35

原创 dotnet 读 WPF 源代码笔记 SafeMILHandleMemoryPressure 的作用

本文来告诉大家在 WPF 里面的 SafeMILHandleMemoryPressure 类的作用。这是一个 internal 不开放的类,是在 WPF 中和 Dx 等模块调用使用的,用途就是辅助 GC 统计当前内存情况,用来在内存不够的时候触发回收这个类放在 src\Microsoft.DotNet.Wpf\src\PresentationCore\System\Windows\Media...

2020-12-26 04:48:46 49

原创 WPF 最简方法使用自己定制的 WPF 框架

本文提供了一个最简的方法,可以用到整个 WPF 框架里面所有 internal 内部权限的成员的方法。这是一个我自己定制的 WPF 框架,可以在此基础上构建属于自己的定制化的 WPF 框架本文提供的方法适用于 .NET 5 和 x86 下,如果需要其他版本,请自行构建和使用,关于如何自行构建和定制化,请看 手把手教你构建 WPF 框架的私有版本现在的 WPF 属于 dotnet 基金会组织...

2020-12-25 00:50:46 76

原创 WPF 框架开发 加入 InternalsVisibleToAttribute 特性让其他程序集可以访问 internal 权限成员

在 WPF 框架开发中,其实很少有开发者有足够的勇气去更改现有的框架逻辑,因为 WPF 的功能十分庞大,很难测试全。更多的开发都是加功能以及开放已有功能。整个 WPF 框架的大体设计是十分好的,可以在框架里面遵循对修改关闭的原则,定制化更多的是做注入,调用 internal 权限成员 本文告诉大家如何给 WPF 框架加入 InternalsVisibleToAttribute 特性让其他程序集可以访问 internal 权限成员

2020-12-25 00:50:46 38

原创 dotnet C# 链表和字典的性能对比

本文来告诉大家我实际使用基准测试的在 .NET Core 3.1 的链表 LinkedList 和 Dictionary 字典的在元素增删的性能对比从算法分析上,其实字典和链表在时间上的性能是差不多的,甚至可以认为字典的速度会比链表更高。但是从空间上,如果一边增加元素一边删除元素那还是链表省空间。同时在字典空间满了之后,修改字典容量会比链表使用更多的时间以下是我用不够严谨的基准性能测试的数...

2020-12-24 00:35:40 63 2

原创 WPF 滑动修改音量控件

本文来分享一个简单的控件,滑动的时候显示音量控制条先来一张效果图这是一个特别简单的控件,代码放在github欢迎小伙伴访问我搭建了自己的博客 https://blog.lindexi.com/ 欢迎大家访问,里面有很多新的博客。只有在我看到博客写成熟之后才会放在csdn或博客园,但是一旦发布了就不再更新如果在博客看到有任何不懂的,欢迎交流,我搭建了 dotnet 职业技术学院 欢迎...

2020-12-24 00:35:40 87 2

原创 dotnet 读 WPF 源代码笔记 AppDomainShutdownMonitor 的设计

本文是我在读 WPF 源代码做的笔记。在 WPF 中的 AppDomainShutdownMonitor 类是一个不开放的类,这个类当前只是给 D3DImage 类使用。在 AppDomainShutdownMonitor 提供了在应用的进程或程序域关闭的时候,进行一次通知,当前是用来清理 D3DImage 类的资源在 WPF 中的 D3DImage 类是一个充满黑科技的类,这个类因为黑科...

2020-12-22 00:44:26 44

原创 dotnet 读 WPF 源代码笔记 启动欢迎界面 SplashScreen 的原理

本文是我在读 WPF 源代码做的笔记。在 WPF 中的启动界面,为了能让 WPF 的启动界面显示足够快,需要在应用的 WPF 主机还没有启动完成之前就显示出启动图,此时的启动图需要自己解析图片同时也需要自己创建显示窗口从 WPF 的 src\Microsoft.DotNet.Wpf\src\WindowsBase\System\Windows\SplashScreen.cs 文件可以看到 ...

2020-12-21 01:09:43 69

原创 dotnet 读 WPF 源代码笔记 WIC 多媒体图片处理通过 WindowsCodecs.dll 实现功能

本文是我在读 WPF 源代码做的笔记在 WPF 中,作为一个现代化的 UI 框架,自然有很多多媒体相关的事情需要处理,在 WPF 中有特别的一层是 WIC 层,这一层将包揽了大部分的多媒体图片的处理。如咱熟悉的 BitmapEncoder 类,里面就有大量调用到 WIC 的逻辑那么在 WPF 中说的 WIC 层是什么?通过 官方文档 可以了解到 WIC 就是 Windows Imagin...

2020-12-21 01:09:43 44

原创 dotnet 读 WPF 源代码笔记 wpfgfx_cor3.dll 是什么文件

本文是我在读 WPF 源代码做的笔记通过 WPF 的架构文档可以了解到在 WPF 里面的架构如下图这里有一层很重要的一层是 MilCore 层,这一层将会沟通 DirectX 和 托管层,而这一层在用户端的逻辑就放在 wpfgfx_cor3.dll 文件里面这个文件的命名定义可以从 src\Microsoft.DotNet.Wpf\src\Shared\RefAssemblyAttr...

2020-12-21 01:09:43 86

原创 dotnet 强签名下使用 InternalsVisibleToAttribute 给程序集加上友元

在 dotnet 里面,可以使用 InternalsVisibleToAttribute 特性,给程序集加上友元程序集,这样能让友元程序集访问到 internal 的程序。也就是说如果我有 A 和 B 两个程序集,我设置了 B 作为 A 的友元程序集 那么此时 B 程序集就能访问 A 程序集里面所有的 internal 成员。默认的友元设置只需要通过 InternalsVisibleToAttri...

2020-12-19 00:34:06 43 2

原创 dotnet OpenXML 解析 WPS 不规范的 PPT 文件的 cNvPr 重复 id 问题

在收到了反馈说有一份课件,打开解析就发现替换的元素不对,原因是这个课件里面的 Slide Master 里面存在一个元素的 id 和某个页面的元素 id 是相同的,这不符合 ECMA 376 的规范。通过读取文档的内容,发现这是 WPS 制作出来的 PPT 文件。本文做一个存档,用来告诉大家有这个坑在 Office 2016 和 Office 2019 的行为判断请看以下两篇博客dotne...

2020-12-19 00:34:06 55 1

原创 WPF 按钮 Button 的 IsEnabled 属性对 WindowChrome 的 IsHitTestVisibleInChrome 的影响

在 WPF 里面,默认标题栏的交互相对复杂,如按钮没有设置 WindowChrome.IsHitTestVisibleInChrome 属性为 True 那按钮是拿不到点击事件的。本文来告诉大家按钮 Button 的 IsEnabled 属性对 WindowChrome 的 IsHitTestVisibleInChrome 的影响在 WPF 中的默认交互是点击标题栏的时候,如果是双击标题栏,...

2020-12-18 00:28:56 69 2

原创 dotnet 部署 GitHub 的 Action Runner 制作自托管运行器

本文告诉大家如何在自己的 CI 服务器上部署一个私有的 GitHub Action Runner 用来执行 GitHub 上的仓库的构建安装为了作为一个 dotnet 的 GitHub Action Runner 的服务器,首先需要在自己的 CI 服务器上安装足够的负载。我下载了 VS 安装了所有能装的功能而 GitHub 的 Action Runner 运行器需要从 GitHub 仓库...

2020-12-15 10:58:05 49

原创 dotnet 5 破坏性改动 WPF 和 WinForms 的 OutputType 输出类型重定向为 WinExe 类型

官方团队为了防逗比,默认将 OutputType 输出类型重定向为 WinExe 类型,这样能解决很多新手遇到的 WPF 项目显示出黑框控制台界面问题。而对于一些老司机来说,这个特点反而有点迷,特别是在尝试打开控制台调试的时候在开始之前,先复习一下 OutputType 这个属性的作用,这个属性告诉了 SDK 程序集输出的文件是什么。可以选的值是 Library 类库和 Exe 控制台程序以...

2020-12-14 00:39:42 71

原创 dotnet 如何更改应用在任务管理器显示的进程名 AssemblyTitle 的值

我有一个应用,我期望他在任务管理器里面显示为 Doubi 这样大家就知道这是一个逗比进程。但是我更改了程序集名,也就是 exe 文件名都没有什么用,因为在任务管理器里面通过 AssemblyTitle 属性决定显示的进程名。本文来告诉大家如何更改 AssemblyTitle 的值在旧版本的 Franken-proj 格式的 csproj 格式里面,在项目都有一个 Properties\Ass...

2020-12-14 00:39:42 79

原创 dotnet core 应用是如何跑起来的 通过自己写一个 dotnet host 理解运行过程

在上一篇博客是使用官方提供的 AppHost 跑起来整个 dotnet 程序。本文告诉大家在 dotnet 程序运行到托管代码之前,所需要的 Native 部分的逻辑。包括如何寻找 dotnet 运行时,如何加载运行时和框架然后跑起来业务端的 dll 文件的逻辑在上一篇博客告诉大家在 dotnet 的 AppHost 是如何做的,详细请看 dotnet core 应用是如何跑起来的 通过Ap...

2020-12-07 00:42:16 113

原创 dotnet 使用 FileAccess 与 OpenOrCreate 对文件访问权限的影响

本文告诉大家在 dotnet 里面,客户端应用,如 WPF 应用对当前应用程序运行用户无写权限的文件进行访问的时候,调用 File.Open 方法的各个参数的影响在 File.Open 方法里面其实就是对 FileStream 创建的封装,在 FileStream 的构造函数有大量的参数,而对文件权限有影响的是 FileMode 和 FileAccess 和 FileShare 三个通过 ...

2020-12-07 00:42:16 93

原创 Xamarin iOS 部署应用提示 iOS code signing key 失败

在部署 iOS 应用的时候,如果是拉别人的代码,因为被使用了别人的签名,就会提示 Error: iOS code signing key ‘iPhone Developer: lindexi@icloud.com (F56JH45N57)’ not found in keychain. 部署失败。解决方法是替换为自己的账号原因就是在 csproj 上的 CodesignProvision 属性设置的是别人的签名,可以通过替换为自己的账号解决在 Xamarin 从零开始部署 iOS 上的 Walte

2020-12-03 21:20:36 95

原创 dotnet core 应用是如何跑起来的 通过AppHost理解运行过程

在 dotnet 的输出路径里面,可以看到有一个有趣的可执行文件,这个可执行文件是如何在框架发布和独立发布的时候,找到 dotnet 程序的运行时的,这个可执行文件里面包含了哪些内容在回答上面的问题之前,请大家尝试打开 C:\Program Files\dotnet\sdk\5.0.100\AppHostTemplate\ 这个文件夹。当然了,请将 dotnet 版本号修改为你本机的版本号...

2020-12-03 02:03:27 169

原创 Mac 升级到 dotnet 5 构建 Xamarin 应用失败 error MSB4186 静态方法调用语法无效

我昨天将 Mac 构建机器也升级到了 dontet 5 最新版。但是在升级之后,所有的 Xamarin 项目都在 Mac 版本的 VisualStudio 构建不通过,提示 error MSB4186: 静态方法调用语法无效。解决方法就是将 VisualStudio 更新到最新版本在升级到 dotnet 5 之后,在 Mac 设备上使用 Mac 版本的 VisualStudio 构建 Xa...

2020-12-03 02:03:27 126

原创 dotnet 编译 Rolsyn 编译器

这是一个套娃,在编译 Rolsyn 编译器之前需要有 Rolsyn 编译器,用 Rolsyn 编译器来编译 Rolsyn 编译器。本文来告诉大家如何构建 Rolsyn 编译器,步骤特别少,很简单整个 Rolsyn 编译器的代码基本都是由 C# 和 VB 构成的,所有源代码都在 GitHub 上完全开源请看: https://github.com/dotnet/roslyn除了 Rolsy...

2020-12-02 00:26:53 93

原创 dotnet 如何在 dotnet test 单元测试控制台里输出日志内容

我在协助小伙伴调试一个只有在 GitHub 的 Action 自动测试时才会炸的问题,而我发现默认的控制台输出是不会在 GitHub 的 Action 显示的,换句话说,在使用 dotnet test 时,代码里面使用的控制台输出不会进行输出解决方法很简单,只需要在控制台输出的部分逻辑修改为 Console.WriteLine 而不是 Debug.WriteLine 方法然后在 dotn...

2020-12-01 01:04:59 114

microsoft.dotnet.ilcompiler.1.0.0-alpha-27527-02.nupkg

现在微软有一个开源项目 CoreRT 能通过将托管的 .NET Core 编译为单个无依赖的 Native 程序 这个项目现在还没发布,但是能尝试使用,可以带来很多的性能提升

2019-10-24

WPF 托盘显示 右击打开菜单,双击打开软件

本文告诉大家如何在 WPF 实现在托盘显示,同时托盘可以右击打开菜单,双击执行指定的代码

2018-11-21

UnitySetup-WebGL-Support-for-Editor-2018.3.7f1.exe

给 untiy 3d 提供 webgl 支持的工具 WebGL(全写Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染

2020-03-01

dotnet framework 4.8 x86 x64

提供dotnet framework 4.8 预览包,这是3621版的预览包 支持 Windows 10 April 2018 Update Windows 10 Fall Creators Update Windows 10 Creators Update Windows 10 Anniversary Update Windows Server, version 1709 Windows Server 2016

2018-08-18

Sublime Text 中文 英文字体 YaHei Consolas Hybrid 1.12

在 Sublimte Text 如何使用默认的字体,英文好看,但是中文不好,所以我就找了一个支持中文英文的字体

2018-01-20

MonoFramework-MDK-6.12.0.114.macos10.xamarin.universal.pkg

用于在 mac 下使用的 Mono 框架。是 Mac 版的 VS 的组件

2020-12-23

Resilio-Sync btsync x64 2.6.1

btsync 是分布式网盘 在这高速运作的信息化时代,使用云端来衔接工作和生活的点滴已是寻常事

2018-10-08

elsarticle-template 包含文件

艾斯维尔官方的模板,这个网站的instruction有问题,下载的东西基本上好多的错误。 所以我就自己添加文件

2018-09-01

USB3CV 2.1.8.0 Installer x64

USB Implementers Forum, Inc. is a non-profit corporation founded by the group of companies that developed the Universal Serial Bus specification. The USB-IF was formed to provide a support organization and forum for the advancement and adoption of Universal Serial Bus technology. The Forum facilitat

2018-10-08

wpf 单例 PfalmcYmgtx

wpf 单例的例子,单例就是用户只能运行这个程序一次,也就是内存只有存在这个程序一个。

2017-10-19

Universal USB Installer 1.9.8.1

Windows Linux U 盘启动盘工具,快速制作启动盘,支持移动硬盘

2018-05-25

CustomWPF 1.1.5.7z

自定义的 WPF 框架,可以使用所有的内部方法

2020-12-24

nuget 5.8.0.6930.exe

NuGet 5.8 is included in Visual Studio 16.8 and .NET 5.0 out of the box. You can also download NuGet 5.8 for Windows, macOS, and Linux as a standalone executable 这是支持 .NET 5 的 NuGet 5.8 版

2020-11-16

CustomWPF 1.1.3.7z

自定义的 WPF 框架,可以使用所有的内部方法

2020-12-23

GitHub.VisualStudio-v2.11.106.vsix

这是 GitHub 在 VisualStudio 2019 的扩展

2020-12-23

sublime_merge_build_2039_x64_setup.exe

这是 SublimeText 公司推出的高性能 Git 合并库,十分好用 不需要注册也能使用,可以无限试用

2020-12-23

Docker Desktop Installer 2.3.0.3 45519 windows community.7z

docker 的 Windows 客户端,提供在 Windows 下的容器支持 Docker Desktop Installer 2.3.0.3 45519 windows community

2020-07-05

lineno.tex

编译 Latex 可能找不到的文件,直接解压文件放在需要创建的 tex 文件相同的文件夹 文件从官方下载

2018-09-01

mono-6.6.0.161-x64-0.msi

Mono是一个由Novell公司主持的项目,并由Miguel de lcaza 领导的,一个致力于开创.NET在Linux上使用的开源工程。它包含了一个C#语言的编译器,一个CLR的运行时,和一组类库,并实现了 ADO NET和ASP NET。能够使得开发人员在Linux用C#开发程序

2020-03-01

dotnet-sdk-3.1.102-linux-x64.tar.gz

我不能用官方的镜像,因为我需要在小伙伴构建的 debian 镜像上面安装 dotnet sdk 用来做构建,其实在 docker 里面需要找到一个个文件,然后复制代码 在安装 dotnet 之前需要通过官方 https://github.com/dotnet/dotnet-docker 找到对应的 docker 文件,这样可以进行复制,可以看到官方是引用下面代码 buildpack-deps:buster-scm 这个库

2020-03-07

vsdbg-16-6-20415-1 vsdbg-linux-musl-x64.zip

VisualStudio 解决首次调试 docker 的 vs2017u5 exists, deleting 太慢问题

2020-06-22

NuGetPackageExplorer 3.19

NuGetPackageExplorer 3.19

2016-11-27

IconImageFactory

IconImageFactory

2016-12-22

移动gogs可以修改参数

移动gogs可以修改参数

2017-02-19

elsarticle template

elsarticle template latex

2017-03-27

Chocolatey windows 安装

这是在 windows 安装 Chocolatey 的脚本,直接导入到 PowerShell 就可以安装

2017-11-25

QuickTime 7 ae 辅助

用于C#控制AE视频缺少MPEG库,出现无法编译。安装这个软件就可以让AE输出指定的格式

2017-12-15

syncthing windows x64 v0.14.42

点对点分享的工具,这是64位的 0.14 中文版,如何使用 [如何安装 btsync - 林德熙](https://lindexi.oschina.io/lindexi/post/如何安装-btsync.html )

2017-12-28

fontcreator 9.1 做字体

如果找不到一个字体,那么就自己做一个,这个软件提供做字体,可以打开两个系统的字体,做出一个字体

2018-01-20

WPF 关闭模态窗口例子

这是一个例子,告诉大家如何解决在 WPF 的软件,弹出一个模态窗口。使用另一个窗口在模态窗口前面。从任务栏打开模态窗口。关闭模态窗口。这时发现,主窗口会在刚才使用的另一个窗口下面

2018-02-07

WPF 使用 WinForm 播放 gif

提供的类,可以直接在 Xaml 使用或者在 cs 使用,可以控制开始播放和停止 在播放的过程中,使用很少的内存

2018-02-11

WPF 等距布局

实际做的效果很简单,因为在开发我容易就用到了等距的控件。等距控件就是在指定的宽度下,平均把控件放在水平的地方,这样相等于 StackPanel 的水平,但是没有做水平压缩。在这个控件,无论在水平放多少个控件,都会在相同的高度把他们放下。如果里面的控件的宽度不相同,那么这些控件拿到的可以使用的宽度都是相同

2018-02-22

WPF ScrollView 代码解释 1.2

本文是分析 .net Framework 源代码的系列,主要告诉大家微软做 ScrollViewer 的思路,分析很简单。 文件是博客说到如何使用触摸

2018-03-13

WPF Direct2D 入门

实际上现在很多小伙伴对于渲染性能就是听到 DirectX 才会去搜索这个博客。我在博客园看到很少的博客讲到这个。即使有也很少会说如何使用 WPF 的,这是我博客的例子,直接打开可以运行,详细请看我博客 lindexi.gitee.io

2018-04-18

WPF 使用 SharpDx 画图 1.1

如果只是使用 SharpDX 使用窗口渲染,就无法使用其它的 WPF 控件,实际使用经常只是使用 SharpDX 加快一些渲染,很多元素都是不需要 这是一个例子告诉大家如何使用

2018-04-22

dotnet 从入门到放弃的 500 篇博客合集

本文是记录我从入门到放弃写的博客,包括 C# 、WPF、UWP、dotnetcore 和 git ,所有博客使用 docx 保存

2018-05-25

WPF 修改图片颜色 1.2

本文告诉大家如何修改图片的颜色,如去掉图片的蓝色 在 WPF 可以使用很多图片处理的方法,本文告诉大家的是一个图片处理,可以把处理的图片保存在文件 这是博客使用的例子

2018-07-03

dotPeek32 2018.1.3 反编译代码

dotPeek 可以用来反编译代码 请看 http://www.cnblogs.com/lindexi/p/debug-wpf-dotpeek-dotnet-code.html

2018-07-19

dotPeek64 2018.1.3 反编译代码

dotPeek 可以用来反编译C#代码 请看 http://www.cnblogs.com/lindexi/p/debug-wpf-dotpeek-dotnet-code.html

2018-07-19

pandoc 2.2.3.2 x86 x64

If you need to convert files from one markup format into another, pandoc is your swiss-army knife 支持转换各种文档

2018-08-21

分享dotnet 使用本机映像 native 优化 dotnet framework 二进制文件

发表于 2020-02-27 最后回复 2020-04-30

【分享】VisualStudio 如何快速添加一个 Git Tag 推送

发表于 2020-04-19 最后回复 2020-04-19

【分享】dotnet 使用 Avalonia 开发 UOS 原生应用

发表于 2020-04-13 最后回复 2020-04-13

分享 WPF 调用 InvalidateVisual 不触发 OnRender 的原因

发表于 2020-03-11 最后回复 2020-04-13

【分享】C# 里面很少人知道但很好用的 Tuple 转换

发表于 2020-04-08 最后回复 2020-04-13

【分享】C# dotnet 高性能多线程工具 AsyncAutoResetEvent 异步等待使用方法和原理

发表于 2020-03-23 最后回复 2020-03-27

lindexi_gd的留言板

发表于 2020-01-02 最后回复 2020-03-02

【分享】C# 在 8.0 对比 string 和 string? 的类型

发表于 2019-04-22 最后回复 2020-03-01

建议csdn开放文章编辑接口

发表于 2018-02-01 最后回复 2020-03-01

WPF 开发大部分核心源代码

发表于 2019-05-24 最后回复 2020-03-01

【分享】.NET Framework 4.8 新特性 使用 GC.GetAllocatedBytesForCurrentThread 获取线程分配过的内存大小

发表于 2019-05-28 最后回复 2020-03-01

[分享] VisualStudio 过滤输出窗口文本

发表于 2019-02-25 最后回复 2019-07-01

[分享] WPF 使用 Pandoc 把 Markdown 转 Docx 工具

发表于 2019-01-31 最后回复 2019-04-22

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除