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

吕毅

.NET and Windows Developer, Microsoft MVP

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

    Windows 系统上如何揪出阻止你屏幕关闭的程序

    2021-06-07 05:42

    使用 Win32 API SetThreadExecutionState 可以阻止进入屏幕保护程序,也能阻止屏幕关闭、阻止系统睡眠。这很方便,这也就可能造成各种参差不齐的程序都试图阻止你的屏幕关闭,于是来一个一整晚亮瞎眼就很难受。

    本文教大家如何揪出阻止你屏幕关闭的程序。

    发现电脑屏幕总是不自动关闭?看看你是否打开了这些程序……

    2021-06-07 05:39

    本文收集一些已知的导致电脑屏幕不关闭的程序。如果你发现无论你设置多短的屏幕关闭超时时间但一直都不关闭,那么可以参考本文检查是否打开了这些程序。

    编写你的专属 MSBuild C# 代码生成器:在保存文件时自动实时生成你的代码

    2021-06-01 12:34

    我之前的博客中有介绍如何在项目中生成额外的代码,也有介绍制作一个生成代码的 NuGet 包。而本文是在此基础上更进一步,可以让生成代码变成实时的;更准确的说,是在保存文件时即生成代码,而无需完整编译一次项目。

    Unity OpenVR 虚拟现实入门六:通过摇杆控制玩家移动

    2021-05-17 00:31

    在 Unity 的帮助下,虚拟现实应用的开发非常容易。不过国内竟然还是没有什么教程,所以这里就来一点入门的,适合新手。

    本文将基于第四篇的简单场景,通过摇杆的方式控制玩家移动。

    Unity OpenVR 虚拟现实入门四:通过脚本控制手与控制器

    2021-05-16 09:50

    在 Unity 的帮助下,虚拟现实应用的开发非常容易。不过国内竟然还是没有什么教程,所以这里就来一点入门的,适合新手。

    本文将基于第三篇的简单场景,打开和关闭控制器的显示。

    Unity OpenVR 虚拟现实入门五:通过传送控制玩家移动

    2021-05-16 09:47

    在 Unity 的帮助下,虚拟现实应用的开发非常容易。不过国内竟然还是没有什么教程,所以这里就来一点入门的,适合新手。

    本文将基于第四篇的简单场景,通过传送的方式控制玩家移动。

    Unity OpenVR 虚拟现实入门二:一个最简单的虚拟现实游戏/程序

    2021-05-16 08:51

    在 Unity 的帮助下,虚拟现实应用的开发非常容易。不过国内竟然还是没有什么教程,所以这里就来一点入门的,适合新手。

    本文将开发一个最简单的虚拟现实应用。

    Unity OpenVR 虚拟现实入门三:最简单的五指交互

    2021-05-16 08:06

    在 Unity 的帮助下,虚拟现实应用的开发非常容易。不过国内竟然还是没有什么教程,所以这里就来一点入门的,适合新手。

    本文将基于前两篇搭建的环境,做一个简单的五指交互。

    Unity OpenVR 虚拟现实入门一:安装配置 Unity + OpenVR 环境

    2021-05-16 08:06

    在 Unity 的帮助下,虚拟现实应用的开发非常容易。不过国内竟然还是没有什么教程,所以这里就来一点入门的,适合新手。

    本文将搭建好虚拟现实的开发环境。

    WPF 制作高性能的透明背景异形窗口(使用 WindowChrome 而不要使用 AllowsTransparency=True)

    2021-01-16 00:30

    在 WPF 中,如果想做一个背景透明的异形窗口,基本上都要设置 WindowStyle="None"、AllowsTransparency="True" 这两个属性。如果不想自定义窗口样式,还需要设置 Background="Transparent"。这样的设置会让窗口变成 Layered Window,WPF 在这种类型窗口上的渲染性能是非常糟糕的。

    本文介绍如何使用 WindowChrome 而不设置 AllowsTransparency="True" 制作背景透明的异形窗口,这可以避免异形窗口导致的低渲染性能。

    Windows 下的高 DPI 应用开发(UWP / WPF / Windows Forms / Win32)

    2021-01-04 12:33

    本文将介绍 Windows 系统中高 DPI 开发的基础知识。由于涉及到坐标转换,这种转换经常发生在计算的不知不觉中;所以无论你使用哪种 Windows 下的 UI 框架进行开发,你都需要了解这些内容,以免不断踩坑。

    适合 .NET 开发者用的 GitHub Actions(时不时更新)

    2020-12-03 09:44

    本文制作并长期更新适合 .NET 开发者用的 GitHub Actions。整理方式为整个文件而不是单个可用的模块,这样可以方便大家以最快的速度为自己的项目添加 GitHub Actions。当然自己改改也可。

    各个版本 Windows 10 的名称、完整版本号、开发代号和系统自带的 .NET Framework 版本

    2020-11-30 06:55

    Windows 10 名称 Windows 版本 开发代号 自带的 .NET Framework 版本
    :      

    使用 Xamarin 在 iOS 真机上部署应用进行调试

    2020-10-31 01:00

    虽然 Xamarin 可以在 Windows 操作系统上编写和调试,但如果开发 iOS 应用,那么我们依然需要一台安装有 XCode 和 Visual Studio for Mac 的 Mac 电脑。做真机部署不是像平时使用太阳系第一 IDE Visual Studio 那样方便。

    所以本文需要介绍如何使用 Xamarin 在 iOS 真机上部署应用进行调试,然后顺便说一些注意事项。

    设置进程的 RedirectStandardOutput 重定向输出后,如果不将输出读出来,会卡死此进程

    2020-08-04 03:00

    设置进程的 RedirectStandardOutput 重定向输出后,必须将其读出来。本文带你做一个实验并得出结论。

    三种方法设置 .NET/C# 项目的编译顺序,而不影响项目之间的引用

    2020-06-24 01:40

    当 A 项目引用 B 项目,那么使用 Visual Studio 或者 MSBuild 编译 A 项目之前就会确保 B 项目已经编译完毕。通常我们指定这种引用是因为 A 项目确实在运行期间需要 B 项目生成的程序集。

    但是,现在 B 项目可能仅仅只是一个工具项目,或者说 A 项目编译之后的程序集并不需要 B,仅仅只是将 B 打到一个包中,那么我们其实需要的仅仅是 B 项目先编译而已。

    本文介绍如何影响项目的编译顺序,而不带来项目实际引用。

    通过设置 sln 解决方案依赖,确保不引用的两个项目之间有明确的编译顺序

    2020-06-24 01:04

    有时在编译解决方案的时候,希望两个项目有明确的编译顺序,而不是自动决定,或者在并行编译的时候同时编译。

    本文介绍通过设置 sln 解决方案依赖来解决编译顺序问题。

    通过 ReferenceOutputAssembly=False 在引用项目时,不额外引入依赖文件

    2020-06-24 00:42

    正常当两个 .NET 项目有引用的时候,会将一个的输出拷贝到另一个的输出目录下。但有时我们只是希望通过引用建立一个依赖关系而已,最终两个项目的输出是独立的。

    通过本文的方法,你可以在 A 项目编译时,确保 B 项目已经编译,而无需引用 B。

    WPF 使用 WindowChrome,在自定义窗口标题栏的同时最大程度保留原生窗口样式(类似 UWP/Chrome)

    2020-06-23 07:16

    WPF 自定义窗口样式有多种方式,不过基本核心实现都是在修改 Win32 窗口样式。然而,Windows 上的应用就应该有 Windows 应用的样子嘛,在保证自定义的同时也能与其他窗口样式保持一致当然能最大程度保证 Windows 操作系统上的体验一致性。

    本文将使用 WindowChrome 来自定义窗口样式,使其既保留原生窗口样式和交互习惯,又能够具备一定的自定义空间。

    .NET 程序集/项目/包的版本号设置有最大范围,最大不能超过 65534

    2020-06-18 16:05

    试过给 .NET Core 项目设置一个大于 65535 的版本号吗?可能没有,因为设置了会炸!

    Visual Studio 在编译 A 项目时,确保 B 项目已编译

    2020-06-18 00:53

    如果考虑在你的某个项目中安插一个专门用来做编译的项目,这个项目要求最先编译,那么你会考虑用什么方法呢?

    本文讲述在编译 A 项目时,确保 B 项目已编译的方法。

    理解 Visual Studio 解决方案文件格式(.sln)

    2020-06-18 00:34

    一般情况下我们并不需要关心 Visual Studio 解决方案文件格式(.sln),因为 Visual Studio 对解决方案文件的自动修复能力是非常强的。但是如果遇到自动解冲突错误或者编译不通过了,那么此文件还是需要手工修改的。

    本文介绍 Visual Studio 解决方案(.sln)文件的格式。

    从 “x is null 和 x == null” 的区别看 C# 7 模式匹配中常量和 null 的匹配

    2020-06-16 02:39

    尝试过写 if (x is null)?它与 if (x == null) 相比,孰优孰劣呢?

    x is null 还有 x is constant 是 C# 7.0 中引入的模式匹配(Pattern Matching)中的一个小细节。阅读本文将了解 x is constant 和 x == constant 之间的差别,并给出一些代码编写建议。

    如何根据一个绝对文件路径生成一个相对文件路径

    2020-06-15 09:23

    日常的开发中,获取绝对文件路径才是主流吧!连 Path.GetFullPath 这种生成绝对路径的方法都已经成为 .NET Standard 的一部分了。

    然而,生成相对路径依然有用——比如你的配置文件是相对于工作目录的,必须这个路径是输出给用户看的……

    .NET/C# 使用 SetWindowsHookEx 监听鼠标或键盘消息以及此方法的坑

    2020-06-13 09:39

    一般来说,大家在需要监听全局消息的时候会考虑 SetWindowsHookEx 这个 API。或者需要处理一些非自己编写的窗口的消息循环的时候,也会考虑使用它。

    如果要知道如何使用这个 API,你可以在网上搜到大量这样的文章/博客/教程/文档,然而大多不会提及使用此 API 时遇到的一些坑。阅读本文,你当然也可以知道应该如何使用这个 API,但同时也能了解如何正确使用以避免一些奇怪的问题。

    WPF / Windows Forms 检测窗口在哪个屏幕

    2020-06-11 10:39

    使用 Windows Forms 自带的 System.Windows.Forms.Screen 类可以从一个窗口句柄获取到对应的屏幕。随后可以使用此 Screen 类获取各种屏幕信息。

    准确判断一个 WPF 控件 / UI 元素当前是否显示在屏幕内

    2020-06-11 09:40

    你的 WPF 窗口是可以拖到屏幕外面去的,所以拉几个元素到屏幕外很正常。你的屏幕可能有多个。你的多个屏幕可能有不同的 DPI。你检测的元素可能带有旋转。

    各种各样奇怪的因素可能影响你检查此元素是否在屏幕内,本文包你一次性解决,绝对准确判断。

    Compare four different file (folder) links on Windows (NTFS hard links, junction points, symbolic links, and well-known shortcuts)

    2020-06-11 01:28

    It is well-known that mklink is a command to create a variety of links on NTFS disk. But if you don’t know much about it or even never hear of it, it doesn’t matter because you know shortcuts at least. This post help you to lean more about mklink and know the differences among the difference command options.

    比较 Windows 上四种不同的文件(夹)链接方式(NTFS 的硬链接、目录联接、符号链接,和大家熟知的快捷方式)

    2020-06-11 01:27

    可能有很多小伙伴已经知道通过 mklink 命令来创建 NTFS 磁盘上的各种链接;当然,就算不知道 mklink 的链接,快捷方式应该每个人都知道吧。mklink 的选项有很多种,但你可能在其他文章中难以找到对这些不同选项的不同效果和使用限制的准确和统一描述。本文将介绍 Windows 系统中所有的链接方式,它们的优缺点、使用条件和坑。

    支持 Windows 10 最新 PerMonitorV2 特性的 WPF 多屏高 DPI 应用开发

    2020-06-10 08:41

    Windows 10 自 1703 开始引入第二代的多屏 DPI 机制(PerMonitor V2),而 WPF 框架可以支持此第二代的多屏 DPI 机制。

    本文将介绍 WPF 框架利用第二代多屏 DPI 机制进行高 DPI 适配的方法。同时,也介绍低版本的 WPF 或者低版本的操作系统下如何做兼容。

    • ←
    • 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