自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 资源 (2)
  • 收藏
  • 关注

原创 Windows下一个普通权限的账户,怎么启动一个有管理员权限的进程

我们知道,如果Windows下一个普通权限的账户,直接启动管理员权限的进程,会弹出输入管理员账号密码的提示窗。但是如果我想通过自启动一个管理员权限的进程怎么办呢,既然都自启动了,还要我输入账号密码就说不过去了。一开始尝试了任务计划程序中的“运行任务时,请使用下列用户账户”,赋值管理员账户(这个过程必须在管理员身份的账户下操作),然后触发器使用普通账户登录触发。结果普通账户登录时,并没有执行成...

2024-03-14 11:25:00 267 1

原创 VS2022中配置QT进行开发

本人上一篇博客写了如何安装QT,这篇主要讲在VS2022中配置QT进行开发。VS中安装QT插件。下载插件地址:https://download.qt.io/archive/vsaddin/在扩展功能安装C++桌面开发,选上Windows 11 SDK  3.扩展——QT VS Tools——QT Versions。Path选择QT安装路径(我的是:"C:\Qt\6.8.0\msvc2...

2024-03-05 13:29:00 586

原创 QT安装指导

Qt是一个跨平台的C++开发库,主要用来开发图形用户界面(Graphical User Interface,GUI)程序。QT有自带的编辑器Qt Creator,但是我主要是C#开发者,习惯于使用VS,所以后面会使用VS开发QT。安装包下载地址:https://download.qt.io/archive/online_installers/我使用了最新版本安装第一页提示登录,没...

2024-03-04 10:59:00 225

原创 C# 查询一个进程是否有管理员权限

var hasElevated = false; var processName = Process.GetCurrentProcess().ProcessName; Process[] processes = Process.GetProcessesByName(processName); foreach (var proces...

2023-12-10 11:40:00 455

原创 C# 使用AES实现简单的加解密

加密:// 使用SHA-256哈希函数处理秘钥var hashedKey = GetSHA256Hash(publicKey);// 加密var encryptString = EncryptStringToBytes_Aes(strs, hashedKey);static string GetSHA256Hash(string input){ using (SHA2...

2023-12-10 11:33:00 488

原创 C# Windows开机后立刻设置地区过一会地区自动变回原来的值

一开始使用PowerShell命令执行,发现过一会地区自动变回原来的值。后来尝试了使用PowerShell脚本执行,并且增加了一些脚本策略,测试通过,不再变回原来的值。/// <summary>/// 设置区域/// </summary>/// <param name="region"></param>/// <returns&...

2023-11-28 20:14:00 520

原创 Windows点登录按钮就转圈“欢迎”然后直接“正在注销”

最近发现普通账户等不进去了,点登录按钮就转圈“欢迎”然后直接“正在注销”。最后查到是因为注册表自启动的地方设置了一些应用必须管理员身份运行的,如果普通账户登录就无法正常运行,导致系统无法登录。计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon下的Userinit看一下除了C:\windows...

2023-11-22 13:42:00 482

原创 C# 使用执行cmd命令遇到俄语乱码处理

设置执行cmd命令的ProcessStartInfo对象编码使用System.Text.Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);注册更多字符编码。通过上面的方式,如果把语言项的Beta版:使用Unicode UTF-8 提供全球语言支持的选择去掉则正常。但是该功能用于修复日志输出还有一些特殊语言乱码的问...

2023-11-19 11:43:00 157

原创 C# 22H2之后的windows版本使用SetDynamicTimeZoneInformation设置时区失败处理

使用SetDynamicTimeZoneInformation设置时区返回false,设置失败。使用PowerShell设置Set-TimeZone成功。/// <summary>/// 设置本地时区/// 参数取值"China Standard Time",即可设置为中国时区/// </summary>/// <param name="timeZon...

2023-11-19 11:36:00 144

原创 Win11怎么设置开机自动登录

打开注册表,找到「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\PasswordLess\Device\DevicePasswordLessBuildVersion」,把「DevicePasswordLessBuildVersion」值从2 改成0。注意:修改保存后需重启电脑才生效。...

2023-11-13 10:56:00 132

原创 C# 使用Path.Combine拼接以:冒号结尾的字符串出现异常

Path.Combine拼接以:冒号结尾的字符串不会自动添加斜杠\

2023-10-30 20:00:00 68

原创 C# Nuget项目A引用的另一个项目C怎么被安装Nuget的项目B使用

最近整理的一个Nuget项目A,我从原先Nuget项目A抽取了一个新项目C,然后项目A引用了项目C。当项目A的Nuget被项目B引用后,发现项目B并不能直接访问项目C的成员。(只能在项目B引入项目C或者项目C也打包成Nuget包,项目B安装项目C的Nuget包)经过组内大佬唐宋元明清2188的指点,只需要在项目A的项目文件中添加TargetsForTfmSpecificBuildOutp...

2023-10-24 10:07:00 229

原创 C# Enum.TryParse字符串既可以使用名称也可以使用数字值

var tryParse = Enum.TryParse<LicenseType>("0", out var licenseType);以前没留意,以为将字符串装枚举的方法Enum.TryParse的字符串只能填名称,最近发现字符串是数字值也可以转换成相应的枚举...

2023-10-23 16:54:00 251

原创 使用Resharper整理项目依赖关系

最近在整理项目,重温了一下Resharper的show project dependency diagram功能。VS安装了Resharper的话,右键解决方案能看到一项“show project dependency diagram”。点击下面两项能看到当前项目简洁整体的依赖关系这样可以很容易看出项目设计上是否合适,Resharper只是个辅助工具,具体应该怎么设计还是看个人对这...

2023-10-20 09:51:00 53

原创 C# 怎么快速回收Dictionary中不再使用的内存

最近发现存在Dictionary的内存需要过比较久的时间才会释放,尝试以下的方式可以快速实现内存释放直接上代码 var bytes = GetFileBytes(fileName); _bytesDict = new Dictionary<int, byte[]>(); _bytesDict.Add(0, b...

2023-10-12 15:02:00 296

原创 Win11通过注册表或者kernel32.dll的SetUserGeoName等方式设置国家或地区后重启过一会就自动变回原来的值...

最近同事panwangvie尝试通过代码设置国家或地区,尝试过注册表或者kernel32.dll的SetUserGeoName等方式设置,重启过一会就自动变回原来的值我也尝试了以下方式均不行:1. 一开始怀疑是自动时钟影响,所以把自动时钟关闭了2. 然后觉得有可能是网络更新了系统什么信息,尝试关闭网络仍然不行3. 又尝试了将服务Geolocation Service禁用,仍然不行...

2023-10-09 15:27:00 236

原创 C# Dx截图初始化报错“SharpDX.SharpDXException: HRESULT: [0x80070057], Module: [General], ApiCode: [E_INVALID...

最近发现Dx截图创建输出设备时output.QueryInterface<Output1>().DuplicateOutput报错:“SharpDX.SharpDXException: HRESULT: [0x80070057], Module: [General], ApiCode: [E_INVALIDARG/Invalid Arguments], Message: 参数错误。...

2023-10-08 11:14:00 317

原创 C# 自己的组件生成Nuget包,组件里的内容(dll等)设置了复制到输出目录,但是引用该Nuget包后生成路径并没有相应的内容...

例如组件A项目中想把以下dll拷贝都输出目录,已经设置了复制到输出目录。然后项目B通过Nuget包引入了组件A,然后项目B生成路径下并没有这几个opencv的dll。经过组内大佬 唐宋元明清2188 的研究需要在组件A的项目文件中给每个dll内容连接添加<PackageCopyToOutput>true</PackageCopyToOutput>&lt...

2023-09-27 17:06:00 167

原创 C# 枚举使用[Flags] 特性形成一个位掩码及判断是否存在某个枚举组合

在C#中,通过给枚举类型添加[Flags]特性,可以指示该枚举类型是用于表示位标志的枚举。使用带有[Flags]特性的枚举类型允许将多个枚举值组合在一起,形成一个位掩码,提供了一种更方便和可读性更好的方式来表示多个选项的组合。当给枚举类型添加[Flags]特性后,可以使用按位或|运算符来组合多个枚举值,使用按位与&运算符来判断是否包含某个特定的枚举值。以下是一个...

2023-09-27 10:04:00 383

原创 C# 获取文件夹和文件列表,与Windows系统看到的保持一致(包括隐藏文件)

Windows系统中有很多系统隐藏的文件,如果不经过筛选,就会查出来多很多文件夹和文件。所以需要过滤掉FileAttributes.Hidden | FileAttributes.System的文件夹和文件 // 创建一个DirectoryInfo对象 var directoryInfo = new DirectoryInfo(f...

2023-09-27 09:59:00 186

原创 C# 获取文件的类型(不是后缀)

最近在做一个文件映射功能,发现使用FileInfo只能获取到文件的后缀,并没有具体的类型描述可以以下方式获取using System;using System.Runtime.InteropServices;using System.Windows;namespace GetChineseExtension{ /// <summary> /// M...

2023-09-22 18:21:00 173

原创 C# 多语言环境下获取时区列表

如果不需要在A语言下获取B语言的时区列表,可以使用C#自带的var systemZones = TimeZoneInfo.GetSystemTimeZones();如果需要在A语言下获取B语言的时区列表,尝试过设置当前进程,线程的Culture是没办法实现的var cultureInfo = new CultureInfo("en_US");CultureInfo.CurrentC...

2023-09-08 18:05:00 151

原创 C# Win11切换到俄语、葡萄牙语,浮点型字符串转换报错System.FormatException:“Input string was not in a correct format.”...

是因为在葡萄牙语中,小数部分用","(逗号)分隔,而不是使用C#默认的"."(点)。解决上面的问题string portugueseNumber = "0,5";double value = double.Parse(portugueseNumber);Console.WriteLine(value); // 输出:0.5或者var str = 1.1;var value ...

2023-09-05 19:43:00 451

原创 WPF项目国际化多语言工具ResXManager使用

首先在VS的扩展找到ResXManager进行下载安装如果安装提示:vsix安装提示无法成功应用某些修改找到安装程序实例 1a5a9225,但其处于不可启重新选中工具进行安装之后即可(有可能之前选中安装了,但是功能不完整,重新点击安装完整即可)安装完ResXManager之后打开新增语言,然后导出,给导出的Excel增加了相应的翻译,再导入即可导入之后,如果有一些缺失的,或...

2023-09-04 15:03:00 840

原创 WPF 应用适配阿拉伯语注意问题

给所有Window设置FlowDirection="RightToLeft"属性即可,输入框的光标问题切换到阿拉伯输入法会自动适配。参考微软官方文档:https://learn.microsoft.com/zh-cn/dotnet/desktop/wpf/advanced/wpf-globalization-and-localization-overview?view=netframeworkd...

2023-09-04 11:06:00 87

原创 C# 获取Windows系统版本注意事项

首先通过微软官方文档:https://learn.microsoft.com/zh-cn/windows/win32/sysinfo/operating-system-version了解各个操作系统对应的版本号下面介绍3种获取版本号的方式及弊端1.Environment.OSVersion.Version OperatingSystem os = Enviro...

2023-08-29 14:25:00 895

原创 WPF ToggleButton使用Command命令触发MouseDown没触发MouseUp,下次点击应用其它地方会再次触发该ToggleButton的命令...

今天在某个应用,ToggleButton控制了蓝牙的开关。测试使用了蓝牙鼠标进行控制,发现关闭后,使用触控点击应用其它地方,再次触发了ToggleButton的命令,又把蓝牙开关打开了。使用Snoop抓取ToggleButton的事件发现,使用蓝牙鼠标关闭后Command命令触发MouseDown没触发MouseUp,下次点击应用其它地方会再次触发该ToggleButton的命令。经过组内同...

2023-08-22 14:15:00 246

原创 C# 任务设置超时取消

public static async Task<TResult> TaskTimeoutAfter<TResult>(this Task<TResult> task, int timeout) { using (var timeoutCancellationTokenSource = new Canc...

2023-08-21 19:29:00 120

原创 C# Windows登录界面进行截图,控制鼠标键盘等操作实现(三)

在Windows登录界面进行截图,目前尝试到的以下的截图方法可以截取到图,其它的方式要么卡住,要么截出来是黑屏的,直接上代码:/// <summary>使用Graphics方式捕获桌面截图(效率低于DesktopCapture,主要用户登录界面截图)</summary> internal class GraphicCapture { private c...

2023-08-17 16:48:00 557

原创 C# Windows登录界面进行截图,控制鼠标键盘等操作实现(二)

上一篇:C# Windows登录界面进行截图,控制鼠标键盘等操作实现(一) - log9527 - 博客园 (cnblogs.com)我们了解了要实现在Windows登录界面进行截图等操作必须满足的条件,这一篇我们主要通过代码实现这些条件。首先先建一个项目A下面一些windows自带非托管dll的调用类。/// <summary> /// WtsApi32.dll导...

2023-08-17 16:41:00 304

原创 C# Windows登录界面进行截图,控制鼠标键盘等操作实现(一)

首先常规的账户进程是没办法获取登录界面的信息的,因为登录界面已经不在某个账户下了,登录界面显示了每一个账户的切换。所以得使用System权限的进程。那么Windows系统究竟是怎么将登录界面与用户桌面隔离开的呢?首先先通过一些Windows操作系统基础知识了解一下。Windows窗口工作站(Window Station)是Windows操作系统中的一个概念,它提供了用户交互的桌面环境。在W...

2023-08-17 16:13:00 396

原创 C# Microsoft.Win32.TaskScheduler方式创建任务计划程序报错: System.ArgumentException: (12,21):UserId:Account...

使用Microsoft.Win32.TaskScheduler创建任务计划程序可参考本人之前的一篇文章:https://www.cnblogs.com/log9527blog/p/17329755.html最新发现个别账户使用Microsoft.Win32.TaskScheduler创建任务计划程序报错:System.ArgumentException: (12,21):UserId: Acc...

2023-08-17 10:51:00 267 1

原创 C# 使用TouchSocket实现Tcp协议通讯,并且解决分包、粘包的问题

我们知道如果Socket传输数据太频繁并且数据量级比较大,就很容易出现分包(一个包的内容分成了两份)、粘包(前一个包的内容分成了两份,其中一份连着下一个包的内容)的情况。粘包的处理方式有很多种,常见的三种是:每个包都在头部增加一个当前传输包的int4字节大小作为包头。每次接收到数据先读取的包头,确定这一包的实际长度n,当接收够n+4长度的数据就是一个完整的包,再重复读取下一包的包头。(相对...

2023-08-09 11:45:00 1502

原创 C# byte[]与Bitmap互转

首先先观察一下本地bmp图像结构(参考:https://blog.csdn.net/qq_37872392/article/details/124710600):可以看到bmp图像结构除了纯图像像素点位信息,还有一块未用空间(OffSet)。所以如果需要得到图像所有数据进行转换,则可以使用网上提供的大部分方式:bitmap转byte[]:public byte[] Bitmap...

2023-08-09 11:20:00 525

原创 C# 使用FFmpeg.Autogen对byte[]进行编解码

C# 使用FFmpeg.Autogen对byte[]进行编解码,参考:https://github.com/vanjoge/CSharpVideoDemo入口调用类:using System;using System.IO;using System.Drawing;using System.Runtime.InteropServices;using FFmpeg.AutoGen;...

2023-08-09 11:03:00 1328

原创 bat 安装服务后,服务设置了“自动”,重启电脑服务没有自动启动

需要设置“允许服务与桌面交互”,安装脚本增加下面红色部分sc delete ServiceNametaskkill /f /im Service.exesc create ServiceName binPath="%~dp0Service.exe"sc config ServiceName start=auto type= own type= interactsc start ServiceN...

2023-08-07 21:11:00 246

原创 有时候空格长度超长原因

在日语中,通常使用全角空格,一个全角空格占据两个字符位置。在中文中,空格通常指的是半角空格,一个半角空格占据一个字符位置。

2023-07-28 16:10:00 36

原创 WPF 在ScrollViewer控件内部的Slider控件无法触摸滑动

WPF中在ScrollViewer控件内部的Slider控件无法触摸滑动,是由于ScrollViewer控件默认设置了IsManipulationEnabled为True。 <ScrollViewer x:Name="ScrollViewer1"> <Slider></Slider> </Scro...

2023-07-27 16:04:00 1076

原创 C#里捕获由非托管代码或硬件故障引起的内存问题等

HandleProcessCorruptedStateExceptions特性可以用于处理进程中出现的严重错误。例如,以下代码片段演示了如何使用HandleProcessCorruptedStateExceptions特性处理进程中出现的异常:[HandleProcessCorruptedStateExceptions]public void MyMethod(){ tr...

2023-07-26 16:46:00 375

原创 VS报错error NETSDK1045: 当前 .NET SDK 不支持将 .NET 6.0 设置为目标。请将 .NET 5.0 或更低版本设置为目标,或使用支持 .NET 6.0 的 .NET S...

从微软官网下载.NET6.0:https://dotnet.microsoft.com/zh-cn/download/visual-studio-sdks?cid=getdotnetsdk重启后打开VS2019仍然出现这个报错回到官网仔细查看,发现原来.NET6.0版本以上必须使用VS2022版本编译了使用VS2022打开编译,报错消失题外话:当电脑已经安装了刚好版本的.net,想...

2023-07-26 14:13:00 2041

数电课程设计交通灯

数电课程设计交通灯设计

2017-08-16

C课程设计-WINDOWS程序设计模拟交通灯

C课程设计,WINDOWS程序设计模拟交通灯,WIN32

2015-12-15

空空如也

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

TA关注的人

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