- 博客(11)
- 资源 (4)
- 收藏
- 关注
转载 关于C#中泛型类型参数约束(where T : class)
.NET支持的类型参数约束有以下五种:where T : struct | T必须是一个结构类型where T : class | T必须是一个Class类型where T : new() | T必须要有
2018-01-31 15:40:25 1999
转载 C# 反射获取字段类变量名
using System.Linq.Expressions; public static string GetPropertyName(Expression> expr) { var rtn = ""; if (expr.Body is UnaryExpression)
2018-01-31 15:39:49 3731
原创 Cmd 获取进程命令行
cmd 输入 下列命令 Chrome.exe为进程名wmic process where caption="Chrome.exe" get caption,commandline /value
2018-01-31 08:58:49 4356 1
原创 C# WPF VisualBrush实现鹰眼视图
private Rectangle HawkeyeBack { get; set; } private Grid HawEyeBox { get; set; } private Rectangle EyeWindow { get; set; } #region 鹰眼视窗 /// /// 初始化鹰眼视窗
2018-01-30 14:06:54 1248 2
原创 C# MongoDB Query查询方法
用的是NuGet里的 Mongo 包MongoDB.Bson.dllMongoDB.Driver.dllusing MongoDB.Driver.Builders;Query.All("name", "a","b"); //通过多个元素来匹配数组 Query.And(Query.EQ("name","a"), Query.EQ("title", "t"));//同时满足
2018-01-16 21:15:01 1756
原创 C# 实现shellcode 进程启动注入eip注入
首先说下代码原理 1.使用CreateProcess 创建一个带 CREATE_SUSPENDED标记的进程自然进程创建加载完DLL后会被挂起。 CREATE_SUSPENDED 标记本是为调试器准备的。2.然后用GetThreadContext获取该进程的线程上下文,保存下来(重要)。。。。3.用VirtualAllocEx 在进程空间申请一段 dll路径长度 + 32字节的内
2018-01-07 17:13:11 2340
原创 LINQ2SQL DataContext上使用事物
以下是扩展的方法 /// /// 开始事物 /// /// /// public static Boolean BeginTrans(this System.Data.Linq.DataContext source) { try
2018-01-06 21:59:53 1112
原创 SqlBulkCopy 封装 CopyTableToSql
/// /// 拷贝数据表到数据库中 /// /// /// public static void CopyTableToSql(string connectionString, DataTable dt) { using (SqlBulkCopy sqlbulkcopy
2018-01-06 21:57:10 853
原创 在linq2sql用反射实现对象拷贝
当在使用 linq2sql 模型时 数据结构是模型自动生成的 但是某些时候要根据ID修改数据时 要实现浅克隆把修改的对象赋值给 模型 这里通过用反射的方式来进行浅克隆 public static void CopyTo(this T source, T desc) { PropertyInfo[] props = typeof(T).GetPrope
2018-01-06 21:45:58 407
原创 IEqualityComparer 应用 Distinct Contains 扩展功能 实现某个字段的对比
创建以下两个类 即可使用 Distinct Contains 扩展功能 实现某个字段的对比 public static class Equality { public static IEqualityComparer CreateComparer(Func keySelector) { return new Comm
2018-01-06 21:38:35 388
原创 Http Get Post Put Delete 调用WebAPi封装
使用方法 List param = new List() { new { UserId = 123, UserData = true } }; //TimeOut HttpHelper.HttpRequestTimeOut = 50000; //GET HttpHelper.Get("ht
2018-01-05 09:16:26 2154
C# 优雅的 APIHOOK 支持X86+X64源码
2018-09-21
C# 从内存加载动态链接库
2018-09-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人