windows
xinyue_htx
自建博客https://xinyuehtx.github.io/
展开
-
在windows上使用linux子系统
目前我们在大部分同学使用的都是Windows系统的电脑,若想能够使用Linux进行一些编程开发,大多数同学还是会使用双系统或者虚拟机。但是在Windows10的系统上,我们可以使用Linux子系统,这一更加轻量,便捷的方式使用Linux系统。要使用Linux子系统,我们首先需要开启这个windows功能,如下图所示。经过一段时间的配置之后,系统会要求进行重启,我们选择立刻重启。软件重启后...原创 2020-02-26 12:58:57 · 1023 阅读 · 0 评论 -
实现一种异步版本的AutoResetEvent
我们在实现一种异步版本的ManualResetEvent_c#,windows_黄腾霄的博客-CSDN博客给大家介绍了异步版本的ManualResetEvent。这里我们自己实现一个异步版本的AutoResetEvent这里是我们创建的异步版本的AutoResetEvent。实现方式和之前的异步版本ManualResetEvent基本相同,也是使用了一个TaskCompletionSourc...原创 2020-02-24 12:57:05 · 375 阅读 · 0 评论 -
实现一种异步版本的ManualResetEvent
我们在使用SemaphoreSlim实现异步等待_c#,windows_黄腾霄的博客-CSDN博客给大家介绍了信号量的异步等待使用方法。可惜的是.NET的ManualResetEvent和ManualResetEventSlim目前都没有提供异步的等待方法。所以我们自己实现一个这里是我们创建的异步版本的ManualResetEvent。实际上这里的本质就是使用了一个TaskCompletio...原创 2020-02-24 12:54:27 · 363 阅读 · 0 评论 -
使用SemaphoreSlim实现异步等待
Semaphore大家应该都很熟悉,一个能够指定最大并发个数的同步锁。实际上.NET还有一个轻量级的信号量实现SemaphoreSlim,其不但能够更加高效的实现信号量的功能,还提供了一个异步等待的API。我们首先回忆下SemaphoreSlim同步等待时的情况。 class Program { private static SemaphoreSlim sem...原创 2020-02-24 12:51:42 · 1968 阅读 · 0 评论 -
构造PipeAccessRule时请不要使用字符串指定Identity
一段运行了很久的命名管道程序,在俄语系统出现了奔溃,揭开了一个尘封已久的bug。公司的软件最近迁移到俄语系统上,然后出现了一个奔溃异常,如下图(已经隐去了关键信息)异常显示了在PipeSecurity添加PopeAccessRule时出现了IdentityNotMappedExceptionIdentityNotMappedException是什么首先我们需要了解什么是SID。win...原创 2020-02-24 12:44:43 · 323 阅读 · 0 评论 -
slmgr源码解析
之前大佬要我做一款windows一键激活工具。基本原理是利用我们的license,从后台请求一个微软的正版license,然后调用slmgr进行windows激活。这样就可以把license的控制权留在自己这里,而不用传递给工厂,避免license流失。(所以期望从本文找破解方案的同学可以散了233)所以记录下对slmgr的研究。slmgr是一个vba脚本,整体的结构如下图所示。可以看到整个结...原创 2020-02-22 09:58:25 · 1071 阅读 · 1 评论 -
使用C#代码启动服务
今天我们来实现使用代码处理windows服务的启动或者关闭处理windows服务的启动和关闭实际上我们需要关注两个事情。第一个是设置服务的启动类型——手动、自动、自动(延时启动)、禁用,第二个是控制服务的状态——启动、停止、暂停、恢复。毕竟如果服务被禁用了,你也没法启动呀OK,我们开始处理启动类型。启动类型实际上就是服务对应的注册表的一个键值他存储在计算机\HKEY_LOCAL_M...原创 2020-02-19 09:19:42 · 1475 阅读 · 0 评论 -
为什么MessageBox会跑到窗口下面
我们在一个窗口调用MessageBox.Show方法会在,该窗口制造出一个模态的消息框。但是有小伙伴最近问我他发现这个消息框经常会到窗口下面显示。出现问题我们来看下他的代码,很简单完全没有问题是不是但是在实际运行中,其中的一个方法Foo抛出了一个异常。而作为代码书写者,为了确保软件的正常运行,将这个方法的所有异常都吞掉了。此时导致的结果就是,用户端看到软件运行正常,但是没有期望的输出...原创 2020-02-19 09:17:24 · 1469 阅读 · 0 评论 -
如何利用c#找到物理网卡的Mac地址
我们经常会在代码中查找设备的Mac地址,以确认设备的唯一性。但是如果你的设备安装了一些虚拟机,这个时候就会比较麻烦了出现问题看一下我这边通过ipconfig /all 跑出来的结果,大家猜猜看,哪个才是我的物理网卡呢?看名称?看描述,看NetBIOS启用状态?唉,都不靠谱,你能想到是第一个标着fake_wlan,描述带Hyper-V的才是我的物理网卡么?How那么如何才能去找到我们的...原创 2020-02-19 09:15:50 · 984 阅读 · 0 评论 -
如何使用mac电脑远程你的windows电脑
现在的程序员基本都需要熟悉各个平台的开发了。我的工作设备是windows,我家里平时自己用的是mac。经常会遇到这样的情况,有时候人在家中坐,锅从天上来。临时出现了一些bug,或者软件问题需要你立刻去解决。但是身边没有合适的设备可以进行远程呀?今天就介绍一款高效工具 Microsoft Remote Desktop 10Microsoft Remote Desktop 10 是微软官方出品...原创 2020-02-08 09:35:41 · 6561 阅读 · 0 评论 -
内网穿透神器frp之进阶配置——stcp及p2p模式
我们在上一篇文章内网穿透神器frp——实现在家远程办公_mac,rdp,windows_黄腾霄的博客-CSDN博客中介绍了如何使用frp的tcp模式,在公网暴露内网设备的tcp服务。还根据此技术实现了对内网设备的远程桌面服务访问。今天我们来分析下这种方式存在的问题,以及可以参考的解决方案。Frp的TCP模式问题这里主要存在2个问题。第一个是安全问题:试想一下,frp的tcp模式相当于你的...原创 2020-02-08 10:12:52 · 71702 阅读 · 7 评论 -
什么是window的VirtualScreen
桌面应用常常会遇到多显示器适配问题,比如我们会期望让小人从最左边的屏幕跑到最右边,或者将一个窗口藏在所有显示器的显示区域之外。在wpf中,我们我们有一个类叫做SystemParameters, 他提供了一些列系统相关的参数属性。我们在这里需要注意的是两个系列PrimaryScreen系列:包括PrimaryScreenHeight,PrimaryScreenWidthVirtua...原创 2020-02-03 15:25:19 · 1229 阅读 · 0 评论 -
如何查看windows软件激活状态
这篇文章我们聊一下如何查看windows软件激活状态WMI在windows和office激活异同这边文章里我们发现了windows和office的激活都依赖于一个叫WMI的东西。那么什么是WMI呢?、官方定义是Windows Management Instrumentation (WMI) is the infrastructure for management data and oper...原创 2020-02-02 15:35:58 · 2725 阅读 · 0 评论 -
如何使用远程桌面操控局域网主机
亲,你的服务器可用了~公司的服务器离我好远,每次去跑项目都很辛苦。所以就研究了下windows远程桌面协助。被控端电脑配置首先打开系统属性—远程点击选择用户,添加点击高级点击立即查找—选择指定用户(确保你拥有这个用户的密码)查询到被控制电脑的ip,可以使用cmd的ipconfig连接远端电脑进行控制打开远程桌面,输入被控制电脑的ip地址和需要登...原创 2020-01-23 09:20:01 · 934 阅读 · 0 评论