Welcome 微信登录

首页 / 软件开发 / .NET编程技术

托管代码的进程注入&CLR宿主

托管代码的进程注入&CLR宿主

托管代码的进程注入&CLR宿主2014-06-26在前面关于CLR寄宿的几篇博客(CLR寄宿(上) MSCOREE.DLL,CLR寄宿(中) 托管exe文件的加载和执行,CLR寄宿(下) 托管宿主)中,介绍了常用的宿主接口。宿主接口,允许我们使用非托管代码创建CLR宿主,从而启动CLR,运行托管代码,控制垃圾回收……等一系列功能。本篇博文要讲解的是使用CLR宿主的一个场景——进程注入。进程注入是一...
托管PE文件

托管PE文件

托管PE文件2014-06-26中间语言在.NET框架中,公共语言基础结构使用CLS来绑定不同的语言。通过要求不同的语言至少要实现CTS包含在CLS中的部分,公共语言基础结构允许不同的语言使用.NET框架。因此,在.NET框架中,所有的语言(C#、VB.NET、Effil.NET等)最后都被转换为了一种通用语言:微软中间语言(Microsoft Intermediate Language,MSIL,以下简称IL)。IL是一种介于高级语言和基于Intel的汇...
使用kendynet编写网关服务

使用kendynet编写网关服务

使用kendynet编写网关服务2014-06-26 博客园 网游服务器大多提供了网关服务,用于作为用户和内部服务器组之间通信代理.网关服务一方面将用户消息从客户端分发到正确的内部服务器.另一方面将来自内部服务器的数据包转发给客户端.一般对于网关应用来说,压力最大的就是广播服务。一个用户的在游戏中产生的行为消息可能要广播给周数百个能看得见他的其它玩家.下面用kendynet编写一个简单的网关服务,当然这只是一个示例程序,它只是简单的把来自一连接的数据发往另...
强名称(1)使用强名称保护代码完整性

强名称(1)使用强名称保护代码完整性

强名称(1)使用强名称保护代码完整性2014-07-03强名称是由程序集的标识加上公钥和数字签名组成的。其中,程序集的标识包括简单文本名称、版本号和区域性信息(如果提供的话)。强名称是使用相应的私钥,通过程序集文件(包含程序集清单的文件,并因而也包含构成该程序集的所有文件的名称和散列)生成的。Microsoft Visual Studio .NET 和在 .NET Framework SDK 中提供的其他开发工具能够将强名称分配给一个程序集。强名称相同的程...
强名称(2)引用强名称签名的程序集

强名称(2)引用强名称签名的程序集

强名称(2)引用强名称签名的程序集2014-07-03引用强名称程序集的过程对我们来说都是透明的,无需做额外的工作。可以通过这种方式来检验强名称程序集的作用。首先创建一个类库项目StrongNameReferenceLib,对其进行强名称签名。图9-16引用强名称程序集接下来修改之前创建的StrongName项目,让它引用StrongNameReferenceLib项目(如图9-16),调用其GetHello方法。StrongNameReferenceLi...
强名称(3)强名称的脆弱性

强名称(3)强名称的脆弱性

强名称(3)强名称的脆弱性2014-07-03通过前文共同体验了强名称对程序集的保护方式和原理,但是这种保护的强度到底有多大呢?能有效地防御恶意篡改者吗?先看下面的例子。回到上篇文章的代码清单9-7,重新对StrongNameReferenceLib项目进行强名称签名,然后编译StrongName项目。在StrongName项目的bin目录里有StrongNam.exe和StrongNameReferenceLib.dll两个文件,然后使用ILDasm打开...
WCF的内部通信服务Factory

WCF的内部通信服务Factory

WCF的内部通信服务Factory2014-07-03 cnblogs AaronWCF,很好,却又麻烦,很多时候不想用WCF的原因就是:用这个真麻 烦...麻烦的地方,比如:一堆一堆的服务配置,散落在一个一个的folder下,更新系统时容易出错客户端除了要知道WCF Contract外,还要知道服务Provider所在位置所以想了个办法来简化这些,主要思路是:加入Internal Communication Service,简称ICS。用来插入自定义的中...
类型安全的EventHandlerList

类型安全的EventHandlerList

类型安全的EventHandlerList2014-07-03 cnblogs ProJKY我们写一个类时,有时候会在同一个类上添加很多事件,事件很多的话,是不 容易管理的,.NET提供的EventHandlerList可以辅助多个事件的管理,但不方便 的地方是,它不是类型安全的,缺少类型安全,多少用起来担心会出错。经过我的 一番改造,可以将系统提供的EventHandlerList通过泛型提供类型安全的管理。 泛型类EventHandlerList.cs...
.NET中多模块后带来的问题解决方法:OSGI原形

.NET中多模块后带来的问题解决方法:OSGI原形

.NET中多模块后带来的问题解决方法:OSGI原形2014-07-03 cnblogs Aaron目前只做了基础的功能,比如:各个模块单独的AppDomain容器Activator激活导出的服务检查不过,虽说这样,但目前的这个版本已经能实现模块分离、互相依赖调用等功 能了,对模块划分已经有很好的作用了。先来说下基本结构:目前这个框架对UI的模块化尚不支持,只支持单机下的模块加载(以后会改进 )。特点:Runtime、Module1、Module2、Modu...
.NET中多模块分布式系统的简单服务访问:OSGI原形

.NET中多模块分布式系统的简单服务访问:OSGI原形

.NET中多模块分布式系统的简单服务访问:OSGI原形2014-07-03 cnblogs Aaron先描述一下本篇描述的适用场景(3台server, 各个模块分布在各个Server上 ,分布式模块互相依赖、交互的场景):多个OSIG引擎交互上,使用的是.net remoting实现的,原理:当请求某个接口时(也就是要获取某Service Instance时),OSGI通过 remoting连接到提供这个服务的url上,如:tcp://localhost:...
代码组(1) 对代码组的管理

代码组(1) 对代码组的管理

代码组(1) 对代码组的管理2014-07-03代码组为我们提供了通过配置方式来实现代码访问安全性的途径。通过代码访问安全性策略工具——Caspol.exe,可以创建、删除、更改代码组。代码组实质是一个条件表达式和一个权限集。如果程序集满足该条件表达式,那么就会被授予该权限集。每个策略级别的代码组集是按树的形式组织的。代码组同时可以通过属性来说明如何定义安全策略。对代码组的管理可以使用两个工具,一个是.NET Framework配置...
代码组(2) 成员条件

代码组(2) 成员条件

代码组(2) 成员条件2014-07-03在创建代码组的过程中,简要熟悉了代码组的成员条件,在安全策略的实施过程中,可以认为,所有符合该代码组成员条件的程序集都属于该代码组。成员条件的实现形式是类型,每种成员条件对应一种类型。所有代码“所有代码”表示匹配所有代码的成员条件,该成员条件的实现类是AllMembershipCondition类。该成员条件通常用于策略级别的根代码组,以便将该策略应用于所有代码。AllMembershipC...
代码组(3) 属性

代码组(3) 属性

代码组(3) 属性2014-07-03代码组可以具有一些属性,这些属性可影响公共语言运行库确定程序集允许的权限集的方式。可应用到代码组的属性有两种:Exclusive和LevelFinal。Exclusive属性,策略级别允许的权限集是与具有此属性的代码组关联的权限集。在考虑所有策略级别时,运行库向代码授予的权限绝对不会多于与Exclusive代码组关联的权限。在给定的策略级别内,代码只能是具有Exclusive属性的一个代码组的成员。在运行库计算独占代码...
Windows 8 键盘上推自定义处理

Windows 8 键盘上推自定义处理

Windows 8 键盘上推自定义处理2014-07-03在Windows 8 应用程序中,当TextBox控件获得焦点时,输入面板会弹出,如 果TextBox控件处于页面下半部分,则系统会将页面上推是的TextBox不被输入面 板盖住,但是当TextBox是在FlipView控件中时,系统不会将页面上推,所以这种 情况下输入框被输入面板盖住。具体原因不清楚,不知道是不是系统bug。当输入面板弹出,页面上推的操作可以通过监听InputPane的Showin...
Windows 8实例教程:开篇

Windows 8实例教程:开篇

Windows 8实例教程:开篇2014-07-03 cnblogs Kevin Fan2012年10月26日,微软发布Windows 8操作系统以及自主品牌平板电脑 Surface,Windows作为世界上最流行的操作系统,发布一周内,下载量超过400万 。毋庸置疑 Windows Store正在酝酿着巨大的Windows应用市场,越来越多 的应用开发商,互联网运营商,外包开发团队以及个人承包商加入到 Windows Store应用开发行列,相信未来几个...
Windows 8实例教程:布局控制

Windows 8实例教程:布局控制

Windows 8实例教程:布局控制2014-07-03与传统应用类似,Windows store应用允许开发人员通过布局控件管理应用UI。 本篇将讨论Windows8布局设计控制。Windows 8布局控件在Windows Store应用设计中,布局控件是控制对象位置和尺寸的,由于Windows Store应用不仅仅面向桌面操作系统,而且还需要适应移动设备的部署,所以在设计时,往往需要考虑到不同的分辨率或者硬件屏幕尺寸标准下应用布局的适配性,最大程度的保...
<< 271 272 273 274 275 276 277 278 279 280 >>