
C#
文章平均质量分 77
苏璃
白云黄鹤道人家 一琴一剑一杯茶
展开
-
C# FileDownloader / 多线程断点续传
在本文中主要开源一款由本人编写的“多线程文件下载工具” 在最初编写“HttpFileDownloader”时,并不考虑支持关闭软件后 在打开支持“文件断点续传” 最初考虑是“多线程下载”所以对“文件断点续传”的支持是后期套上去的 造成代码可读性变差不少 不过并不影响功能当前代码运行对内存要求低廉 但如果你从互联网下载很庞大的文件 那么对“中央处理器”的性能越发高 同时需要注意在1.原创 2016-02-01 01:29:12 · 768 阅读 · 0 评论 -
C# 非递归二叉树遍历
非递归二叉树遍历的核心在于模拟(Stack Frame)的过程想必有人已经晕头转向,但是有不少.NET开发人员应不会对它陌生,调用堆栈槛调试时经常看到,而且.NET也包含StackFrame的应用类 做网站的朋友应该是不会去接触的吧、上图是特意截取的一个易语言程序的调用槛,当然前提的下个断点(Break Point)在(Stack Frame)中可以看到从未知处到断点处原创 2015-10-01 17:52:08 · 516 阅读 · 0 评论 -
C# ASM
从前天开始到今天编写了一个ASM的类,主要是为了方便C#内嵌或者写CALL代码看起来与易语言的汇编模块差不多对的,我借鉴了一下Super-EC及随风EC中的部分源代码 在MDebug && Visual Studio 2012中获取或附加调试部分代码注:创建一个控制台或窗体项目,成功后Alter+Enter或右键项目选择属性选项然后如上图一般选择生成更改目标平台为x86(必原创 2015-10-01 02:53:02 · 2105 阅读 · 0 评论 -
C# DLL To LIB / FallMinLibTools
DLL To LIB 概念步骤:1:映射DLL至内存2:PE信息 / 文件映像3:EAT / 函数导出表4:ordinal hint RVA / 序数线索5:生成*.def文件6:编译*.def文件 / lib.exe && link.exe坐看月中天、笑尽生无泪,上述则展示手动为Math.dll编写Math.def文件 需PE Explorer工具主要阐述DL原创 2015-08-22 02:24:06 · 2612 阅读 · 2 评论 -
C# SetOpacity / 设置窗口透明度
先行调用“取窗口属性 /GetWindowLong”取得窗口的“窗口扩展风格 /GWL_EXSTYLE”属性值,位或(bor)“窗口扩展分层 /WS_EX_LAYERED”属性值,后调用“置窗口属性 /SetWindowLong”设置新的ExStyle“置窗口分层透明度/ SetLayeredWindowAttributes”后传递“Alpha /LWA原创 2015-09-06 12:57:32 · 3756 阅读 · 0 评论 -
C# GlobalResetEvent / WaitHandle
GlobalResetEvent(全局重置事件)是由我编写的一种类似与.NET线程处理方面的AutoResetEvent(自动重置事件)、ManualResetEvent(手动重置事件)的函数集合ARE && MRE在.NET中被规范用于线程处理方面,不过在底层它是对系统EVENT内核对象一个函数封装集合,C++开发者在学习线程时有所涉及、 全局域于Mutex(互斥体)原创 2015-09-05 21:59:15 · 701 阅读 · 0 评论 -
WMI 取外部进程命令行 / GetCommandLine
如何获取外部进程的命令行 似乎有很多人有该问题 有人是通过PSAPI但并不太适合C# && VBS && VB.NET那有没有更好的办法 有利用WMI 服务获取到Win32_Process class在获取CommandLine下面含三种不同语言的代码:VBScript Function GetCommandLine(dwProcessId) Set objWMISe原创 2015-09-01 19:43:36 · 2444 阅读 · 0 评论 -
C# 监控网卡流量
这个DEMO是通过GetIfTable2函数实现的 不过优快云上传资源后半天都显示不出来看来以后还是传在我的网盘上吧 感觉不怎么样。1:获取MIB2接口 函数的实现体 是不是觉得很简单呢?不过的确也很简单 public static unsafe Win32Native.MIB_IF_TABLE2 GetMIB2Interface() {原创 2015-06-04 17:01:16 · 4198 阅读 · 0 评论 -
C# 一个简易的 Socket / TCP 服务器与客户端
该“Socket / 套接字”示例为同步的,如果你需要学习Socket,那么学习同步方式是很有必要的,异步是从同步过渡过去的。首先你需要创建两个控制台项目 一个为Server / 服务器 另一个为Client / 客户端服务器:namespace Server{ using System; using System.Diagnostics; using S原创 2015-06-09 19:01:07 · 4846 阅读 · 0 评论 -
C# mouse_event / 模拟鼠标事件
想必有很多人在项目开发中可能遇见需要做模拟鼠标点击的小功能,很多人会在百度过后采用mouse_event这个函数,不过我并不想讨论如何去使用mouse_event函数怎么去使用,因为那没有多大意义。 static void mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo)原创 2015-07-04 21:33:11 · 10497 阅读 · 1 评论 -
C# AJAX.挂接事件
从下面的代码你可以知道它是存异步的Ajax,objAjax.onreadystatechange = new OnReadyStateChange(objAjax, new EventHandler(OnReadyStateChange))与JScript代码ajax.onreadystatechange = function() { };本质是差不多的,只不过我使用的方法是它内部的形原创 2015-06-23 12:42:17 · 3999 阅读 · 2 评论 -
C# NetCut / Only
本类库实际上是一种很失败的东西,至少在我看来是足够失败 当时也不知道是头发热还是人未醒,居然会去拦截WinInet,看来几年前学习的WebProxy与HTTP是白学了,我想应该是 Retrieve-HttpOnly-Session-Cookie-in-WebBrowser 这篇帖子中的一些话误导了我把,本类库的源代码实际上只是提供给大家学习API-HOOK的一个小小应用不过AP原创 2015-07-18 15:46:04 · 4317 阅读 · 0 评论 -
C# inline-asm / 嵌入x86汇编
C#可不可以嵌入汇编 可以 在我眼中C#作为一个介于中上层语言是不可能不可以置入汇编代码的 为什么会被我认为中上层语言呢 从C#保留指针就可以看出 我知道有很多人一定不会相信C#可以使用汇编代码 不过C#会比较麻烦C#不可以直接内联汇编(inline-hook)准确的说C#只可以使用(auto-asm)动态汇编 这种技术不是C#独有的 易语言、VB、C++ 三种语言都可以 不过动态原创 2015-07-08 11:44:59 · 6830 阅读 · 0 评论 -
C# QQ GTK && MD5
查阅了一下C#关于QQ GTK方面的资料、然而并没有找到什么相关性的代码好吧,那只有自己写一份 不过GTK方面算法以前的时候Downloader过一下 虽然是E语言的、不过不打紧 一般GTK主要应用于登陆QQ空间留言板 那一块、不过在本代码中包含TXMD5加密部分 TXMD5搞登陆验证其实也还可以 // bkn, gtk, ldw public s原创 2015-08-04 11:30:28 · 891 阅读 · 0 评论 -
C# 鼠标坐标取网页内成员坐标.ie
有时候你需要后台获取ie浏览器 鼠标所在位置的元素坐标,然而你使用屏幕坐标是不可行的所以我们需要把坐标转换成浏览器内坐标 然后再通过elementFromPoint获取网页成员。 private void tmrWatcher_Tick(object sender, EventArgs e) { IntPtr hWnd = Wind原创 2015-06-15 14:43:07 · 4216 阅读 · 0 评论 -
C# 操作外部浏览器
当你执行了下面的代码,若你打开了IE浏览器不论数量 都会被远程操作跳转到我的博客上(容我小小调皮一下)。首先我为什么不使用SHDocVw.Interop呢?有些人可能知道,Visual Studio打包Interop COM库会区分[主/次]版本号,一般Visual Studio COM打包是按照开发者电脑注册表中的COM[主/次]版本号决定。不过这种情况一般针对Active原创 2015-06-09 14:02:22 · 5357 阅读 · 0 评论 -
C# 字符串分割
这是以前憋得无聊做的一个(string splite)分割文本重写的算法 当然这是很简单的 纯算法我也写过现在还在邮箱不过那个算法也会更改毕竟大量数据跑不赢.Net自带的String::Split的确对我而言是个不小得打击 不过倒也不错。1. strtock // 分割文本 _Str 欲被分割的文本 _Delim 欲被用于分割的文本 该api貌似不能用了,智商捉急了2原创 2015-06-04 13:20:11 · 4047 阅读 · 0 评论 -
C# 光学字符识别(OCR) / English
光学字符识别的原理大致与我的这篇帖子内讲述的“验证码识别”大同小异当然本文并不阐述验证码识别的原理在网上有很多不同的类库与接口提供光学字符识别,如百度接口商店(Baidu API Store)中提供不少的识别库,但主要是REST API接口方式在本文中我使用轻量高效的AspriseOCR,著名的光学字符识别引擎有Google的Tesseract,Microsoft的PPT光学字原创 2015-11-09 12:35:19 · 1638 阅读 · 0 评论 -
C# API-Hook / x86
API-Hook是拦截或改变API函数执行的结果技术,百度百科上有不少注解 但却是IAT-Hook,与本文的Inline-Hook不是太一至,但是本质作用是相同的 而两种Hook都有各自的优势与劣势、那么下面我们开始了解什么是Inline-Hook它的原理又是如何 当然你可以变通的试试(Mem-Hook)内存挂钩 当然我希望观摩过本帖的开发人员 可以告别EasyHook原创 2015-10-15 21:30:29 · 853 阅读 · 0 评论 -
C# 远过程外部调用 LoadLibrary、GetModuleHandle、GetProcAddress、FreeLibrary
本类可以很方便的实现“远过程外部调用”获取、卸载、导入外部对象的动态链接库且包括特俗的获取模块函数,调用“LoadLibrary / 导入动态链接库”到外部对象,可能会被安全软件认定为注入行为,需要注明的是本类代码在x86下编写,且在代码中大量使用了x86 asm / auto,所以尽量以x86平台编译且需要操作的是x86 / 32bit的外部对象 当然本类只作参考与学习 在本类中原创 2015-11-17 10:31:57 · 7100 阅读 · 1 评论 -
C# 迅雷7专用链接 / Thunder 7 Private Links.
在本文中主要阐述《迅雷7》专用链接的加密与解密、那么必须先从迅雷7专用链接加密原理谈起那么我们为什么需要深入研究《迅雷7》专用链接?在我的感知中迅雷会后台捆绑很多应用与插件 而且很消耗内存与性能、而网络上大量资源是通过迅雷专用链接才可以下载 逼迫用户通过迅雷下载 当然这些所谓的专用的链接只是难到用户 不过你在做文件下载工具时 也可能会需要对一些常用链接的解密的支持 总原创 2016-02-09 21:27:08 · 782 阅读 · 0 评论 -
大漠插件“安装、卸载、创建” / Plug-in elf.
从今天开始在“Plug-in elf.”栏目写内容了,故名思义是“外挂小精灵”本栏目内只提供关于外挂开发的技术文献、当然本人不建议你为公司开发外挂,因为复杂外挂开发并不是单独一个人可以做下来的,即便一个团队也可能无法研发出真正意义上的外挂、如同封包(WPE)外挂,目前网页游戏在这里一块主要通过时间加密,而且每秒上百个封包,且会利用类似“时间加密”这一块的技术,每个游戏加密方式各不相原创 2016-01-11 14:50:49 · 5257 阅读 · 0 评论 -
C# 从零开始编写一个修改“植物大战僵尸”阳光的内存辅助
相信很多朋友都喜欢玩游戏,那么大多数人都会选择开挂 虽然最近在做一个C#天谕模拟G(类小精灵) 目测账号已被封要求5000天币解冻 不然等三天、当时差点没吓一跳500软妹币 知道有很多人都开过小挂挂 但是开的时间久以后免会萌生自己研发外挂的想法 那么我先简述一下外挂有哪几种、第一种也就是以前比较主流的即“内存辅助”,这种外挂现在的话 网络游戏很少了一般应用在单机游原创 2015-09-20 08:17:04 · 3573 阅读 · 1 评论 -
C# 极品飞车9(改钱辅助) / nfsMWAssist
由于近日大量的在玩PlayStation 2(PS 2)的游戏,然而我在电玩之家下载的“极品飞车9”是DVD Video当时就无力吐糟好吧,最后在游侠网上下载了一个PC完整包版 开启生涯吊虐NPC,不知道为什么我这个PC里面的极品飞车跑赢黑名单上的NPC车库,居然木有车 对的木有车、那么我就需要大量“刀落”,没办法只有两种途径 要不你写一个外挂,否则在网上下载一个外挂原创 2015-11-29 20:55:41 · 1189 阅读 · 0 评论 -
C# 远过程调用地址(弥补缺陷)
今天写的这篇文章,倒不如说是弥补C# 远过程外部调用 LoadLibrary、GetModuleHandle、GetProcAddress、FreeLibrary我这篇文章内共享代码的缺点,相信有很多道友即便拿着这个源代码也不知道能做什么因为即便大家知道了 可以获取外部模块函数地址,卸载、导入本地模块、但是还有很多人对Win32编程并不熟悉、当然我们做.NET开发的、一点也不用WI原创 2016-01-11 00:04:19 · 501 阅读 · 0 评论 -
C# NT下CPU占用率
我在以前写过一篇易语言通过PDH访问性能计数器,取系统CPU占用率的方法内容链接:http://blog.youkuaiyun.com/u012395622/article/details/46381235在Win_NT_32中获取CPU占用率的方法 有很多,如上提到的PDH,还有GetSystemTimers方式统计的占用率、在本文中主要使用另外一种通过调用系统内核层API(NtQuerySystemInformation),当然你也可以使用驱动级API(ZwQuerySystemInformat原创 2015-12-04 14:42:49 · 445 阅读 · 0 评论 -
C# 二代身份证验证 / VerifyIDCard
由于现在社会技术的发展,需要验证身份证的合法性越发重要那么我们如何去验证一个身份证是否合法呢?我在以前的时候,特意写过一篇VB.NET 查询身份证信息当然它是通过“百度身份证信息查询”的REST接口 编写的一个类,当然那个时候并不考虑通过“身份证验证算法”识别身份证是否有效,注意VB.NET的主题是“查询身份证信息”而不是“验证身份证合法性”、我们以上面的“身份原创 2016-01-05 15:17:28 · 883 阅读 · 0 评论 -
C# 驱动卸载 / UniSysDriver
如果你需要了解驱动如何加载,那么可以参考我的这篇文章C# 驱动加载 / LoadSysDriver总体两者的方法差异不大 public static bool UniSysDriver(string strServiceName) { IntPtr hSCManager = OpenSCManager(null, null, SC_MA原创 2016-01-05 12:29:48 · 877 阅读 · 0 评论 -
C# 驱动加载 / LoadSysDriver
我们为什么要用通过C#操作驱动,相信有人做过通过WinIo“驱动级键盘模拟”方面的开发,当然如果是真正的WinIo开发会比较麻烦,你必须要手动编写许可证、包括映射WinIo驱动而不是单纯的直接调用WinIo.dll内的函数、当然WinIo技术中可以令系统变速(开加速挂必备),当然缺点明显并不兼容双核下处理器是个硬伤、好了今天可不是谈WinIo这种神器的,不过既然是驱动方原创 2016-01-03 19:27:55 · 3099 阅读 · 1 评论 -
C# WavePlayer / WaveOutWrite
在本文中主要调用WinMm库中导出的waveOutWrite完成“波形数据块”的播放,当然,播放“波形数据块”的办法很多如“MCI”、“BASS”、“WMP”、“DirectX Sound”等、不过为什么我一定要用waveOutWrite呢?可能有人曾经想过“音频解码器”是怎么开发的,那么我可以简单的说一下、“音频解码器”比如mp3的mpeg audio,我们都知道它是一种原创 2015-12-18 11:33:31 · 1936 阅读 · 0 评论 -
C# 发送中文信息 / 软件自动化
在本文中主要发送中文信息到QQ消息框内在直接发送到聊天信息框内、在本文标题内我提到“OA / 软件自动化”,那么我先说明一下什么是“软件自动化”、OA的形态有很多,但是核心理念并不改变通过在软件内编写一系列操作、由软件代替人进行工作、也就是说平常时间需要人做的事情现在我们交付给软件进行操作,软件的特点在于速度高效且永远不会累,只需要人们给运行自动化软件的计算机提供电力支原创 2016-01-01 13:51:12 · 369 阅读 · 0 评论 -
C# 取活动网卡信息 / WMI
本文中通过.NET上的MOS服务获取到活动网卡信息,当然前提是你需要在项目中引用System.Management,你可能会有疑惑为什么我不再通过VBScript获取,这是因为我厌倦了通过脚本对象获取方式、又或说通过Marshal类中提供的函数动态绑定、会越多越发感到心好累、好了 不谈这些没什么意义的话如果参考本文建议先看看Win32_NetworkAdapterConfigu原创 2016-01-01 11:37:31 · 820 阅读 · 0 评论 -
C# Base64Engine
BASE64是一种很常见的编码方式,它的编码规则为将三个字节容器内的数据通过位运算计算到四字节容器内寄存,每76个字符尾部加=具体可以参考百度百科、结尾符号使用=号表示using System;using System.Collections.Generic;using System.Text;namespace Base64Engine{ class Progr原创 2015-12-14 12:43:53 · 298 阅读 · 0 评论 -
C# ActiveX控件开发 / ActiveXHost
在本文中开发的“ActiveX Control”方法 功能与兼容较弱且容易,主用于WebBrowser,当然如VC+与VB等语言也可以使用特殊方法内嵌Control To Form 如果需要功能强大的ActiveX 那么各位看官请自行研究Ole(对象链接嵌入)编程原创 2015-11-23 18:49:23 · 474 阅读 · 0 评论 -
C# 取外部网页对象
该方法被广为流传 还有一种方法则是通过Shell对象来获取IE指针,不过只能获取到IE窗口的网页文档如果不是就不行了 不过在这里我介绍通过MSAA技术的原型ObjectFromLresult 函数实现获取IE内核网页文档对象指针的一个办法 不局限域MSDN:https://msdn.microsoft.com/en-us/library/ms696155.aspx核心代码:原创 2015-06-07 21:15:40 · 4249 阅读 · 0 评论 -
C# 先序遍历XML
下面是通过先序方式学过二叉树都应知道如何去遍历树形的结构 实际上是很简单的通过 递归算法 不过也有不好的地方 容易内存吃紧 一般数据量小的话倒是很不错 不过你也不可能不用 否则很难遍历玩整个多层次的树形结构的东东 反正有得就有失 看开点 public virtual void BuildTree(XmlNodeList XMLNodes, TreeNodeCollec原创 2015-06-07 15:38:43 · 3774 阅读 · 0 评论 -
C# GZip 压缩 / 解压
有时候我们需要去压缩数据 如视频/音频/内容 等信息 不少应用于套接字编程 不过微软为我们提供了一个用于解压缩的类GZIP不过这东西是很多年以前就开了源代码的 如RAR则是借鉴其算法修改增强的一个东西不过我是没这个算法你们如果想要研究可以去Github上面去搜索。我在这里提供两种放是压缩 不过真要让我最喜欢的可能还是MyZip。 public static byte[原创 2015-07-01 18:33:15 · 4983 阅读 · 0 评论 -
C# 创建快捷方式 / 取快捷方式目标
快捷方式在Win32上应用的非常之多,比如某个软件安装完毕后会创建一些快捷方式到特定目录下,那么在.NET上我并未发现有什么托管类可以操作快捷方式,那么我们又必须要使用它 为此我预先写了一份快捷方式应用的代码,希望对大家有益健康咯。using System;using System.IO;using System.Runtime.InteropServices;class Pro原创 2015-06-10 18:48:59 · 4900 阅读 · 0 评论 -
C# 串口编程与易语言之间通信
要进行串口编程你必须要有一个虚拟串口模拟软件才行 否则你只有玩实体机推荐大家使用Virtual Serial Port Driver / VSPD个人感到挺好用的。我们先看看下面两种语言的初始化代码:易语言:易语言串口编程: http://bbs.125.la/thread-13798919-1-1.htmlC#:是不是感到很简单的呢?不过我在上原创 2015-06-10 14:24:40 · 5733 阅读 · 0 评论 -
C# 三种方式实现模拟键盘按键
模拟按键在.Net中有三种方式实现。第一种方式:System.Windows.Forms.SendKeys 组合键:Ctrl = ^ 、Shift = + 、Alt = %模拟按键:A private void button1_Click(object sender, EventArgs e) {原创 2015-06-08 16:15:49 · 7990 阅读 · 1 评论