• walterlv
  • 朋友
  • RSS
  • 主题
搜索
Microsoft MVP

吕毅

.NET and Windows Developer, Microsoft MVP

  • 博客
  • 胡思乱想
  • 朋友
  • 开源项目
  • 关于
  • RSS 订阅

    在编译期间使用 Roslyn/MSBuild 自带的方法/函数判断、计算和修改属性

    2019-05-15 13:41

    充分利用 MSBuild 自带的方法,可以在编译期间完成大多数常见的属性转换,而不再需要自己专门写库来完成。

    本文介绍如何使用 MSBuild 自带的方法,并列举 MSBuild 中各种自带的方法。

    Roslyn/MSBuild 在编译期间从当前文件开始查找父级文件夹,直到找到包含特定文件的文件夹

    2019-05-15 13:16

    大家在进行各种开发的时候,往往都不是写一个单纯项目就完了的,通常都会有一个解决方案,里面包含了多个项目甚至是大量的项目。我们经常会考虑输出一些文件或者处理一些文件,例如主项目的输出目录一般会选在仓库的根目录,文档文件夹一般会选在仓库的根目录。

    然而,我们希望输出到这些目录或者读取这些目录的项目往往在很深的代码文件夹中。如果直接通过 ..\..\.. 来返回仓库根目录非常不安全,你会数不过来的。

    Directory Opus 使用命令编辑器添加 PowerShell / CMD / Bash 等多种终端到自定义菜单

    2019-05-15 09:27

    使用 Directory Opus 替代 Windows 自带的文件资源管理器来管理你计算机上的文件可以极大地提高你的文件处理效率。

    本文将教你如何使用 Directory Opus 的命令编辑器功能编写一组菜单,我们将在这组菜单里面集成各种各样的终端。

    C# 8.0 中开启默认接口实现

    2019-05-15 06:57

    当你升级到 C# 8.0 和 .NET Core 3.0 之后,你就可以开始使用默认接口实现的功能了。

    从现在开始,你可以在接口里面添加一些默认实现的成员,避免在接口中添加成员导致大量对此接口的实现崩溃。

    Directory Opus 使用命令编辑器集成 TortoiseGit 的各种功能

    2019-05-15 02:41

    使用 Directory Opus 替代 Windows 自带的文件资源管理器来管理你计算机上的文件可以极大地提高你的文件处理效率。

    本文将教你如何使用 Directory Opus 的命令编辑器功能创建一个命令——跟 TortoiseGit 进行集成。

    在 Directory Opus 中添加自定义的工具栏按钮提升效率

    2019-05-15 02:41

    使用 Directory Opus 替代 Windows 自带的文件资源管理器来管理你计算机上的文件可以极大地提高你的文件处理效率。

    Directory Opus 自定义的工具栏按钮可以执行非常复杂的命令,所以充分利用自定义工具栏按钮的功能可以更大程度上提升工作效率。

    让 Directory Opus 支持 Windows 10 的暗色主题

    2019-05-14 08:17

    使用 Directory Opus 替代 Windows 自带的文件资源管理器来管理你计算机上的文件可以极大地提高你的文件处理效率。

    由于我自己的 Windows 10 系统使用的是暗色主题,所以我希望 Directory Opus 也能搭配我系统的纯暗色主题。

    本文介绍如何将 Directory Opus 打造成搭配 Windows 10 的暗色主题。

    通过分析 WPF 的渲染脏区优化渲染性能

    2019-05-13 01:50

    本文介绍通过发现渲染脏区来提高渲染性能。

    Roslyn/MSBuild 在编译期间处理路径中的斜杠与反斜杠

    2019-05-12 06:47

    本文介绍如何在项目文件 csproj,或者 MSBuild 的其他文件(props、targets)中处理路径中的斜杠与反斜杠。

    在 Roslyn/MSBuild 中进行基本的数学运算

    2019-05-11 06:53

    在任何一种编程语言中,做基本的数学运算都是非常容易的事情。不过,不知道 .NET 项目的项目文件 csproj 文件中进行数学运算就不像一般的编程语言那样直观了,毕竟这不是一门语言,而只是一种项目文件格式而已。

    本文介绍如何在 Roslyn/MSBuild 的项目文件中使用基本的数学运算。

    使用 DISM 工具检查并修复 Windows 系统文件

    2019-05-10 01:02

    DISM,Deployment Image Servicing and Management,部署映像服务和管理。本文介绍使用此工具检查并修复 Windows 的系统文件。

    使用 System File Check (SFC) 工具检查并修复 Windows 系统文件

    2019-05-09 13:02

    sfc.exe 这个程序的名称指的是 System File Check,用于做系统文件检查。本文介绍使用此命令检查并修复 Windows 系统文件。

    Visual Studio 使用 Parallel Builds Monitor 插件迅速找出编译速度慢的瓶颈,优化编译速度

    2019-05-05 13:42

    嫌项目编译太慢?不一定是 Visual Studio 的问题,有可能是你项目的引用关系决定这个编译时间真的省不下来。

    可是,编译瓶颈在哪里呢?本文介绍 Parallel Builds Monitor 插件,帮助你迅速找出编译瓶颈。

    使用 EnumWindows 找到满足你要求的窗口

    2019-04-30 13:11

    在 Windows 应用开发中,如果需要操作其他的窗口,那么可以使用 EnumWindows 这个 API 来枚举这些窗口。

    本文介绍使用 EnumWindows 来枚举并找到自己关心的窗口(如 QQ/TIM 窗口)。

    安装和运行 .NET Core 版本的 PowerShell

    2019-04-30 11:37

    Windows 自带一个强大的 PowerShell,不过自带的 PowerShell 一直是基于 .NET Framework 的版本。你可以下载安装一个 .NET Core 版本的 PowerShell,以便获得 .NET Core 的各种好处。包括跨平台,以及更好的性能。

    本文将介绍在你的 Windows 系统上安装一个 .NET Core 版本的 PowerShell。

    XAML 很少人知道的科技

    2019-04-30 11:08

    本文介绍不那么常见的 XAML 相关的知识。

    WPF 程序鼠标在窗口之外的时候,控件拿到的鼠标位置在哪里?

    2019-04-30 06:53

    在 WPF 程序中,我们有 Mouse.GetPosition(IInputElement relativeTo) 方法可以拿到鼠标当前相对于某个 WPF 控件的位置,也可以通过在 MouseMove 事件中通过 e.GetPosition(IInputElement relativeTo) 方法拿到同样的信息。不过,在任意时刻去获取鼠标位置的时候,如果鼠标在窗口之外,将获取到什么点呢?

    本文将介绍鼠标在窗口之外时获取到的鼠标位置。

    如何修改 Visual Studio 新建项目时的默认路径

    2019-04-30 02:29

    Visual Studio 创建新项目的时候,默认位置在 C:\Users\lvyi\source\repos\ 下。多数时候,我们都希望将其改为一个更适合自己开发习惯的路径。实际上修改默认路径并不是一个麻烦的事情,但是当紧急需要修改的时候,你可能找不到设置项在哪里。

    本文介绍如何修改这个默认路径。

    使用 dotnet 命令行配合 vscode 完成一个完整 .NET 解决方案的编写和调试

    2019-04-29 03:09

    如果你是开发个人项目,那就直接用 Visual Studio Community 版本吧,对个人免费,对小团体免费,不需要这么折腾。

    如果你是 Mac / Linux 用户,不想用 Visual Studio for Mac 版;或者不想用 Visual Studio for Windows 版那么重磅的 IDE 来开发简单的 .NET Core 程序;或者你就是想像我这么折腾,那我们就开始吧!

    Visual Studio 通过修改项目的调试配置文件做到临时调试的时候不要编译(解决大项目编译缓慢问题)

    2019-04-26 04:22

    .NET 托管程序的编译速度比非托管程序要快非常多,即便是 .NET Core,只要不编译成 Native 程序,编译速度也是很快的。然而总是有一些逗比大项目编译速度非常缓慢(我指的是分钟级别的),而且还没做好差量编译;于是每一次编译都需要等待几十秒到数分钟。这显然是非常影响效率的。

    在解决完项目的编译速度问题之前,如何能够临时进行快速调试改错呢?本文将介绍在 Visual Studio 中不进行编译就调试的方法。

    Visual Studio 如何能够不进行编译就调试 .NET/C# 项目(用于解决大项目编译缓慢的问题)

    2019-04-26 00:11

    .NET 托管程序的编译速度比非托管程序要快非常多,即便是 .NET Core,只要不编译成 Native 程序,编译速度也是很快的。然而总是有一些逗比大项目编译速度非常缓慢(我指的是分钟级别的),而且还没做好差量编译;于是每一次编译都需要等待几十秒到数分钟。这显然是非常影响效率的。

    在解决完项目的编译速度问题之前,如何能够临时进行快速调试改错呢?本文将介绍在 Visual Studio 中不进行编译就调试的方法。

    WPF 获取元素(Visual)相对于屏幕设备的缩放比例,可用于清晰显示图片

    2019-04-25 09:24

    我们知道,在 WPF 中的坐标单位不是屏幕像素单位,所以如果需要知道某个控件的像素尺寸,以便做一些与屏幕像素尺寸相关的操作,就需要经过一些计算(例如得到屏幕的 DPI)。

    更繁琐的是,我们的控件可能外面有一些其他的控件做了 RenderTransform 进行了一些缩放,于是了解到屏幕像素单位就更不容易了。

    本文将提供一套计算方法,帮助计算某个 WPF 控件相比于屏幕像素尺寸的缩放比例,用于进行屏幕像素级别的渲染控制。

    MSBuild 中的特殊字符($ @ % 等):含义、用法以及转义

    2019-04-24 12:48

    在 MSBuild 中有一些特殊字符,如 $ @ % ' 等,本文介绍他们的含义,如何使用他们,以及你真的需要这些字符的时候如何编写他们。

    在项目文件 csproj 中或者 MSBuild 的 Target 中使用 % 引用集合中每一项的属性

    2019-04-24 12:35

    在编写项目文件或者 MSBuild Target 文件的时候,我们经常会使用 <Foo Include="Identity" /> 来定义集合中的一项。在定义的同时,我们也会额外指定一些属性。

    然而这些属性如何拿到并且使用呢?本文将介绍使用方法。

    使用 7-Zip 的命令行版本来压缩和解压文件

    2019-04-24 01:55

    7-Zip 也有一个简短的名称 7z。它的原生 UI 确实不怎么好看,非常有年代感;不过 7-Zip 的强大之处不在于 UI,而在于其算法和各种文件的支持情况。不过,7-Zip 提供了命令行的版本,让你摒除一切杂念,专心处理压缩文件的工作。

    本文介绍如何通过命令行来使用 7-Zip。因为使用命令行,所以你甚至可以自动化地完成压缩文件的各种处理。

    ClearType 的原理:Windows 上文本的亚像素控制

    2019-04-23 11:17

    有位小伙伴问我为什么他电脑上的文本看起来比较虚。我去看了下,发现他电脑上关掉了 ClearType。

    微软的 ClearType 技术通过控制亚像素来使得文本显示更为清晰。本文代理了解 Windows 系统上的文本是如何通过亚像素控制使得显示更为清晰的。

    C#/.NET 使用 git 命令行来操作 git 仓库

    2019-04-21 12:36

    我们可以在命令行中操作 git,但是作为一名程序员,如果在大量重复的时候还手动敲命令行,那就太笨了。

    本文介绍使用 C# 编写一个 .NET 程序来自动化地使用 git 命令行来操作 git 仓库。

    这是一篇很基础的入门文章。

    如何快速自定义 Visual Studio 中部分功能的快捷键

    2019-04-21 12:06

    Visual Studio 中有些自带的快捷键与现有软件有冲突,那么如何修改这些快捷键让这些功能正常工作起来呢?

    WPF 像素着色器入门:使用 Shazzam Shader Editor 编写 HLSL 像素着色器代码

    2019-04-17 06:32

    HLSL,High Level Shader Language,高级着色器语言,是 Direct3D 着色器模型所必须的语言。WPF 支持 Direct3D 9,也支持使用 HLSL 来编写着色器。你可以使用任何一款编辑器来编写 HLSL,但 Shazzam Shader Editor 则是专门为 WPF 实现像素着色器而设计的一款编辑器,使用它来编写像素着色器,可以省去像素着色器接入到 WPF 所需的各种手工操作。

    本文是 WPF 编写 HLSL 的入门文章,带大家使用 Shazzam Shader Editor 来编写最简单的像素着色器代码。

    如何在 MSBuild 的项目文件 csproj 中获取绝对路径

    2019-04-16 10:16

    通常我们能够在 csproj 文件中仅仅使用相对路径就完成大多数的编译任务。但是有些外部命令的执行需要用到绝对路径,或者对此外部工具来说,相对路径具有不同的含义。这个时候,就需要将相对路径在 csproj 中转换为绝对路径来使用。

    本文介绍如何在项目文件 csproj 中将一个相对路径转换为绝对路径。

    • ←
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • →

    © 2014-2021 walterlv, all rights reserved. Powered by: Jekyll Theme by: walterlv Based on Thiago Rossener