一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Asp.net

推荐.Net、C# 逆向反编译四大工具利器

转自:https://blog.csdn.net/kongwei521/article/details/54927689 在项目开发过程中,估计也有人和我遇到过同样的经历:运行环境出现了重大Bug亟需解决、或者由于电脑挂了、旧代码覆盖新代码,而在这种情况下,我们不能直接在当前的代码中修改这个Bug然后发布,这会导致更严重的问题,因为相当于版本回退了。还有电脑挂了代码整个都没有,这种情况下 我们只能只能利用一些逆向的技巧和工具了 来解析在服务器发布好的dll。那么你只是单纯的修改一个.Net程序集中的某个方法或功能,而且这个程序集还是出自于你自己或你所在团队之手,这实在是一件非常容易的事情,这和破解别人的程序完全不同,你不会遇到无法破解的加密算法,也不会遇到让人恶心的加壳混淆。所以我要把用过的工具一个个的列出来总结一下。 推荐四大发编译工具 1:.Net Reflector  【收费】 一提起.Net逆向,其实很多人第一反应都是Reflector这款神器,这一方面是由于Reflector良好的用户体验和强大的插件功能,另一方面要归功于Reflector堪称完美的智能反编译能力,使用它不仅能看到反编译后的IL源码甚至能直接反编译出C#源码,而且和编写时的代码几无二致,如果需要还可以直接另存为工程文件用Visual Studio打开,不过现在已经收费了,所以老司机都选择破解版,有钱人选择正版。 破解地址就不在这里放出,大家自行搜索. 使用方法:可以直接把dll、exe拖放到左侧,或者文件选择选择 官方网址:http://www.red-gate.com/products/dotnet-development/reflector/ 2:ILSpy/dnSpy 【免费】 ILSpy是唯一免费且开源的.NET反编译器,它基于MIT许可证发布。ILSpy的代码生成和语法高亮功能做的非常好。对于反编译的程序集,它既可以将其保存在一个文件中,也可以为所有文件创建一个项目。ILSpy是一个独立的工具,没有Visual Studio集成。,ILSpy 是为了完全替代收费的Reflector而生,它是由 iCSharpCode 团队出品,这个团队开发了著名的 SharpDevelop 。ILSpy 完全开源,ILSpy的使用和上面的Reflector完全类似,可以直接把dll、exe拖放到左侧,或者文件选择选择。 官方网址:http://ilspy.net/ ILSPY还有一款同门师弟,感觉比ILSPY还强大 dnSpy is a .NET assembly editor, decompiler, and debugger forked from ILSpy * Assembly editor * Decompiler * Debugger * Tabs and tab groups * Themes (blue, dark, light and high contrast) If you want to help, fork the project and send pull requests. Latest release: https://github.com/0xd4d/dnSpy/releases Latest build: https://ci.appveyor.com/project/0xd4d/dnspy/build/artifacts 3:JetBrains dotPeek【免费】 JetBrains是捷克的一家软件开发公司,出品了大量著名的开发工具,包括:IntelliJ IDEA、PHPStorm、ReSharper、TeamCity、YouTrack等等,每一款产品都如雷贯耳。dotPeek 是 JetBrains 开发的一款.Net反编译工具,是.Net工具套件中的一个相比于前面几款工具来说,dotPeek算比较小众的一款,它生成的代码质量很高,它还会尝试到源代码服务器上抓取代码。DotPeek的导航功能和快捷键非常便捷。它还能精确查找符号的使用,同时支持插件。DotPeek不能与Visual Studio集成。个人感觉它最大的特色就是Visual Studio风格,这对于那些长期在Visual Studio下进行开发的人来说应该更亲切一点。 官方网址:http://www.jetbrains.com/decompiler/ 4:Telerik JustDecompile 【需要输入信息安装】不喜欢这个就卸载了 Telerik JustDecompile是一个免费的.NET反编译器,但是有商业化支持。它生成的代码质量也很高。它可以为反编译程序集得到的代码创建一个项目。JustDecompile提供了健壮的查找功能,能够支持全文查找和符号使用查找。它还有一个插件系统,目前在Telerik的网站上有两个可用的扩展。JustDecompile不能与Visual Studio集成。 […]

龙生   11 Feb 2020
View Details

wsdl手动生成,生成单文件

公司一老哥提供的方法,避免生成一大堆文件~   wsdl.exe下载

龙生   05 Feb 2020
View Details

解决方案:CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\--”--“拒绝访问。 ”

IIS部署的网站打开出现问题: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\6ba3b83b\52fcdeee\App_global.asax.7ky3gsdp.dll”--“拒绝访问。 ”   将windows/temp属性-安全-高级 添加IIS_USERS用户,同时编辑权限为完全控制(写入和编辑)保存即可   from:https://www.cnblogs.com/yinrq/p/4712948.html

龙生   04 Feb 2020
View Details

C#泛型方法返回值

核心代码return (T)(object)xxx; 示例代码如下:

 

  参考:https://blog.csdn.net/iningwei/article/details/88978598

龙生   09 Jan 2020
View Details

log4net不输出日志的原因及解决方案

光子:最常见的原因是权限的问题,比如你的log目录没有写入权限,有时可能还要给“完全控制”的权限。 ============================================================================ log4net不输出日志文件主要有以下几个原因: 1 没有在AssemblyInfo文件中添加下面的代码:

  2 运行程序目录下没有log4net.config配置文件。 解决方法有两种: 手动将log4net.config复制到运行程序 选择解决方案中的log4net.config,在属性–>复制到输出目录,选择始终复制。 3 运行程序目录下没有log4net.dll文件。 解决方案: 手动复制,一般不会出现。 4 log4net的net framework版本与运行程序的版本不一致。 如果在调试中出现以下提示:

  就很有可能是这个原因。 解决方案: 更改log4net版本或者运行程序的net framework版本。 5 log4net.config的配置文件中有错误。 解决方案: 这个问题最难解决,因为你必须要仔细检查每一个设置点。例如我有一次就无法输出日志,最后发现,file节点配置如下:

  更改为

  期待的日志就出现了。因此,如果前面确定都没有问题的话,你就应该仔细检查一下你的配置文件了。   from:https://blog.csdn.net/sgmcumt/article/details/83021616

龙生   03 Jan 2020
View Details

C# Socket基础(一)之启动异步服务监听

 

 

    ok 服务监听就启动成功了,正等待客户端连接。      

 

  建议对照  C# Socket基础(一)之启动异步服务侦听 来看。

接收消息完成回调事件

又与大家见面,看不懂的随时问。  

  客户端接收消息

 

  客户端:   服务器:   客户端接收到消息:   private Socket socketClient;//客户端套接字,关于实例化请参考C# Socket基础(三)之客户端连接服务器和接收消息 客户端发送消息

关于  ShowMsg(string message);是自定义的函数,在C# Socket基础(一)之启动异步服务侦听 好了,到这里就要告一段落了,实现了基本的客户端和服务器采用TCP协议通信。 看看效果吧: 客户端:   服务器:   from:https://www.cnblogs.com/aaa6818162/p/3862159.html

龙生   26 Dec 2019
View Details

ASP.NET Web API 使用Swagger使用笔记

最近换了工作,其中Webapi这块没有文档,之前有了解过Swagger借此机会好好整理下常用的地方分享给有需要的小伙伴。 概述: 1.swagger 引用 2.swagger 问题1.action 方法名称相同处理 3.swagger 问题2.序列化出来的JSON NULL 值处理 4. 汉化及controller说明 5. 统一返回HttpResponseMessage 返回类型 指定 6. 自定义 HTTP Header (oauth2.0 请求) 7.请求示例remarks   1.swagger 引用  第一步:   第二步:修改SwaggerConfig.cs 如 api 版本号,title   第三步:创建项目XML注释文档 右键项目→属性→生成→选中下方的 "XML文档文件" 然后保存 配置启用: c.IncludeXmlComments(string.Format("{0}/bin/BjxWebApis.XML",System.AppDomain.CurrentDomain.BaseDirectory)); 第四步:启动项目 地址:http://localhost:58303/swagger   哈哈 成功了,不对这个是最终效果,下面一步一步来实现吧。 2.swagger 问题1.action 方法名称相同处理 根据错误提示 很快发现 某位大神 同样的接口名 传递了不同参数,导致了这个错误,解决方式: c.ResolveConflictingActions(apiDescriptions => apiDescriptions.First()); 问题解决了 进行下一步 3.swagger 问题2.序列化出来的JSON NULL 值处理 先上图 等了好半天 一直不出来 打开F12一看原来有错,万能的网友帮了我,原来问题出在http://localhost:58303/swagger/docs/v1这个JSON资源上面, 序列化出来的JSON,包含了为NULL的字段,导致swagger-ui-min-js出现异常。 进一步分析是因为我项目使用的newtonsoft.json这个库的配置导致,应该忽略为NULL的字段, 对应解决办法如图: settings.NullValueHandling = NullValueHandling.Ignore;   问题解决了 开心 继续… 4. 汉化及controller说明 看图:咦 怎么控制器没有说明,这个和汉化一起说吧 第一步:定义一个provider实现ISwaggerProvider接口 包含了缓存 名:SwaggerCacheProvider 代码:

  第二步:定义一个JS文件,做成嵌入资源,这个js文件的功能主要有两个,一个是汉化,另一个就是在界面上显示控制器的描述文字

  […]

龙生   25 Dec 2019
View Details

C#使用post方式提交json数据

 

龙生   25 Dec 2019
View Details

推荐.Net、C# 逆向反编译四大工具利器

转自:https://blog.csdn.net/kongwei521/article/details/54927689 在项目开发过程中,估计也有人和我遇到过同样的经历:运行环境出现了重大Bug亟需解决、或者由于电脑挂了、旧代码覆盖新代码,而在这种情况下,我们不能直接在当前的代码中修改这个Bug然后发布,这会导致更严重的问题,因为相当于版本回退了。还有电脑挂了代码整个都没有,这种情况下 我们只能只能利用一些逆向的技巧和工具了 来解析在服务器发布好的dll。那么你只是单纯的修改一个.Net程序集中的某个方法或功能,而且这个程序集还是出自于你自己或你所在团队之手,这实在是一件非常容易的事情,这和破解别人的程序完全不同,你不会遇到无法破解的加密算法,也不会遇到让人恶心的加壳混淆。所以我要把用过的工具一个个的列出来总结一下。 推荐四大发编译工具 1:.Net Reflector  【收费】 一提起.Net逆向,其实很多人第一反应都是Reflector这款神器,这一方面是由于Reflector良好的用户体验和强大的插件功能,另一方面要归功于Reflector堪称完美的智能反编译能力,使用它不仅能看到反编译后的IL源码甚至能直接反编译出C#源码,而且和编写时的代码几无二致,如果需要还可以直接另存为工程文件用Visual Studio打开,不过现在已经收费了,所以老司机都选择破解版,有钱人选择正版。 破解地址就不在这里放出,大家自行搜索. 使用方法:可以直接把dll、exe拖放到左侧,或者文件选择选择 官方网址:http://www.red-gate.com/products/dotnet-development/reflector/ 2:ILSpy/dnSpy 【免费】 ILSpy是唯一免费且开源的.NET反编译器,它基于MIT许可证发布。ILSpy的代码生成和语法高亮功能做的非常好。对于反编译的程序集,它既可以将其保存在一个文件中,也可以为所有文件创建一个项目。ILSpy是一个独立的工具,没有Visual Studio集成。,ILSpy 是为了完全替代收费的Reflector而生,它是由 iCSharpCode 团队出品,这个团队开发了著名的 SharpDevelop 。ILSpy 完全开源,ILSpy的使用和上面的Reflector完全类似,可以直接把dll、exe拖放到左侧,或者文件选择选择。 官方网址:http://ilspy.net/ ILSPY还有一款同门师弟,感觉比ILSPY还强大 dnSpy is a .NET assembly editor, decompiler, and debugger forked from ILSpy * Assembly editor * Decompiler * Debugger * Tabs and tab groups * Themes (blue, dark, light and high contrast) If you want to help, fork the project and send pull requests. Latest release: https://github.com/0xd4d/dnSpy/releases Latest build: https://ci.appveyor.com/project/0xd4d/dnspy/build/artifacts 3:JetBrains dotPeek【免费】 JetBrains是捷克的一家软件开发公司,出品了大量著名的开发工具,包括:IntelliJ IDEA、PHPStorm、ReSharper、TeamCity、YouTrack等等,每一款产品都如雷贯耳。dotPeek 是 JetBrains 开发的一款.Net反编译工具,是.Net工具套件中的一个相比于前面几款工具来说,dotPeek算比较小众的一款,它生成的代码质量很高,它还会尝试到源代码服务器上抓取代码。DotPeek的导航功能和快捷键非常便捷。它还能精确查找符号的使用,同时支持插件。DotPeek不能与Visual Studio集成。个人感觉它最大的特色就是Visual Studio风格,这对于那些长期在Visual Studio下进行开发的人来说应该更亲切一点。 官方网址:http://www.jetbrains.com/decompiler/ 4:Telerik JustDecompile 【需要输入信息安装】不喜欢这个就卸载了 Telerik JustDecompile是一个免费的.NET反编译器,但是有商业化支持。它生成的代码质量也很高。它可以为反编译程序集得到的代码创建一个项目。JustDecompile提供了健壮的查找功能,能够支持全文查找和符号使用查找。它还有一个插件系统,目前在Telerik的网站上有两个可用的扩展。JustDecompile不能与Visual Studio集成。 […]

龙生   05 Dec 2019
View Details

ASP.NET Core 企业开发架构概述

企业开发框架包括垂直方向架构和水平方向架构。垂直方向架构是指一个应用程序的由下到上叠加多层的架构,同时这样的程序又叫整体式程序。水平方向架构是指将大应用分成若干小的应用实现系统功能的架构,同时这样的系统叫做分布式系统。在架构上java和.net世界都有优秀的框架支持构建垂直和水平方向架构。ASP.Net Core非常轻量且具有很高的性能,不仅适合做整体式程序,也非常适合做分布式系统。随着微服务的兴起,各种语言的混合应用是个趋势。   目录 一、 垂直方向架构 1. 多层架构 1.1 领域模型 1.2 存储仓库 1.3 服务 1.4 UI 2. 典型框架 2.1 数据存储框架 2.1.1 数据访问辅助 2.1.2 对象-关系映射 2.2 MVC 框架 2.2.1 经典MVC模式 2.2.2 后端MVC模式 2.2.3 典型框架 2.2.4 MVC模式总结 2.3 IOC框架 2.3.1 概念 2.3.2 典型注入框架 二、 水平方向架构 1. SOA架构 1.1 简洁版架构 1.2 服务的基本要素 1.3 服务治理 2. 微服务架构 2.1 简洁版架构 2.2 服务的基本要素 2.3 服务治理 3. 整体式 vs SOA架构 vs 微服务架构 4. SOA典型框架 5. 微服务典型框架 三、 总结   1. 多层架构 分层架构通过程序包或者程序的隔离构建松耦合的应用。我们以最近流行的洋葱架构模型进行分析,如图 1.1 领域模型 包括领域实体/存储接口/服务接口,是整个程序的核心。 贫血模型 如果把大量的业务逻辑委托给服务接口实现者,领域模型显得很瘦小,就可以称之为贫血模型。这种模型下的领域对象仅仅表示“状态”。“行为”(也称为逻辑、过程)放在了N层结构的Logic/Service/Manager层中。优点是易于理解和实现,缺点是随着业务发展模型会难以表达业务领域。目前不少业内软件架构是这种模式。 贫血模型的简单图示:     充血模型 如果在领域模型中实现主要的业务逻辑,把不方便实现的业务(比如汇率结算,地理坐标解析等)委托给服务接口实现者,此时领域模型显得粗壮,就可以称之为充血模型。这种模型下的领域对象既表示“状态”又有”行为“,领域对象之间还通过聚合在一个根(聚合根),然后由根对象保证状态的一致性(类似于数据库表之间的约束一致性)。优点是模型易于跟进业务发展,容易通过重构表达最新的业务领域;缺点是不易掌握。 充血模型的简单图示:     […]

龙生   28 Apr 2019
View Details
1 7 8 9 44