c# 拦截进程中的方法函数

一、前言

由于项目需要,最近研究了一下跨进程通讯改写第三方程序中的方法(运行中),把自己程序中的目标方法直接覆盖第三方程序中的方法函数;一直没有头绪,通过搜索引擎找了一大堆解决方案,资料甚是稀少,最后功夫不负有心人,经过两天的研究,终于在github 上找到两个开源的代码,通过两个开源代码结合起来即可实现我的需求。下面进一步来分析实践原理,后面会把源代码地址贴上来;
通过该文章分享,你会知道怎样通过注入一个dll模块改写第三方运行的程序中的某个方法,在里面实现自己的业务,这个场景在做外挂程序中特别实用!!!

二、场景

假如有一个第三方应用程序,这时候需要对第三方应用程序进行方法拦截,比如[……]

继续阅读

c# 读写注册表

RegistryKey _RegistryKey = Registry.CurrentUser.OpenSubKey(@”SOFTWARE\Microsoft\Windows\CurrentVersion\”, true);

//读取

object _Day = _RegistryKey.GetValue(“01B42DB9-3F07-4FC1-A573-33A12030AB70”, null);

//写入
_RegistryKey.SetValue(“01B42DB9-3F07-4FC1-A573-33A12030AB70”, DateTime.Now.Day);[……]

继续阅读

wpf 选择项

xaml

<ComboBox x:Name=”cbb_ConfigEncryption” Margin=”421,7,0,30″ HorizontalAlignment=”Left” Width=”97″ Text=”加密” SelectionChanged=”cbb_ConfigEncryption_SelectionChanged”>
<ComboBoxItem Content=”加密”/>
<ComboBoxItem Content=”不加密”/>
</ComboBox>

c#

private void cbb_ConfigEncry[……]

继续阅读

c# 发布AOT,独立运行、避免被反编译

随着.Net 7的发布,Native AOT也成为亮点之一,大家都非常关注AOT能否解决被反编译的问题,今天我们就一起来看看。

一、演示项目

先创建一个演示项目,方便后续验证能否反编译。

1.1、创建控制台项目:ConsoleAppAot

项目名:ConsoleAppAot

1.2 选择框架.Net 7

1.3 实现功能:2个数字相加

// See https://aka.ms/new-console-template for more informationint

num1 = 1;

int num2 = 2;

Console.WriteLine(num1 +[……]

继续阅读

c# ProcessPriorityClass进程优先级

ProcessPriorityClass等级说明

public enum ProcessPriorityClass

字段
AboveNormal 32768
指定进程的优先级高于 Normal 但低于 High。

BelowNormal 16384
指定进程的优先级在 Idle 之上,但在 Normal 之下。

High 128
指定进程执行必须立即执行的时间关键任务,如 Task List 对话框,不管操作系统的负荷如何,用户调用该对话框后均必须迅速响应。 该进程的线程优先于普通或空闲优先级类进程的线程。
为进程的优先级类指定 High 这一个优先级时需谨慎,因为高优先级类应用程序几[……]

继续阅读

进程管理器

进程管理器 最新版本:v20.22.12.1

进程管理器 配置工具

  1. 打开配置 进行配置文件加载
  2. .点击添加 填写对应的参数 “程序名称不能重复”
  3. 点击 保存向
  4. 都配置后 点击 保存配置

进程管理器 核心程序

Windows下 分配程序管理员权限后双击运行 否则有的程序会启动失败

windows 如何进行管理员权限自动启动请参考:  windows 开机软件启动项方法 – osdll-系统库

Linux下 安装mono 给管理员权限 进行执行

Windows 平台 xp-11全部兼容 最低支持.net framework 3.5平台

此软件免费给大家使用。

部分功能需要定[……]

继续阅读

wpf ListBox单击获取数据

只需处理PreviewMouseDown事件:

private void listBox_PreviewMouseDown(object sender, MouseButtonEventArgs e)
{
    var item = ItemsControl.ContainerFromElement(listBox, e.OriginalSource as DependencyObject) as ListBoxItem;
    if (item != null)
    {
        // ListBox item clicked - do some cool things h[......]

继续阅读

80端口占用问题

80端口是为HTTP(HyperText Transport Protocol)即超文本传输协议开放的,此为上网冲浪使用次数最多的协议,主要用于WWW(World Wide Web)即万维网传输信息的协议。无论是用电脑办公的白领一族,还是用电脑刷刷微博看看视频的朋友们,总会遇到80端口被占用的问题,总是令人很烦心。现在小编就大家如何解决80端口被占用的问题。

  首先介绍一种网上普遍的方法,就是查找占据80端口的进程,然后关闭它就行了。

1、运行cmd,然后输入netstat -ano,回车;

2、查看开头几行包含0.0.0.0:80的那一行最后的pid,为几个数字,把这几个数字记下[……]

继续阅读