随笔分类 -  .NET

摘要:曾有朋友问我为什么不使用现成的框架做流水工,我说那太没劲,抄来抄去的没有成就感,可实际情况是无桥可走,无处可抄,找不着能参考的代码,只能自己摸石头过河。就是这样一点一点的,时至今日已经一年多了,这个“软件”还处在遥遥无期的状态,如果有雇主的话,一定早就把我开除了吧。显然,造成现在局面的主要原因是我过 阅读全文
posted @ 2020-10-13 03:36 ccddnet 阅读(116) 评论(0) 推荐(0)
摘要:通过前文已经将IL代码分割成各种语句块,剩下的就是要把表达式语句实现了。这里需要对表达式充分的理解一下,每句IL代码都是有Opcode和Operand的,这些个Operand将会出现在表达式中,而Opcode则是表达式中的运算符,每个Operand之间都必须存在运算符。在C#中运算符一共有15级,所 阅读全文
posted @ 2020-06-27 23:18 ccddnet 阅读(151) 评论(0) 推荐(0)
摘要:前不久,一位爱好汉化的朋友联系到我,他对自己有了些略高的要求,不止是汉化,还希望有更多……在我看来这种行为是有违道德的,但还是盛情难却,正好研究一下,然后集成进我的.Net RuntimeExplorer中。 BAML是XAML的二进制版本,没有明确的资料说明其格式,不过它并不神秘,使用reflec 阅读全文
posted @ 2020-06-12 22:03 ccddnet 阅读(2107) 评论(0) 推荐(1)
摘要:本来已经结束这个话题,但在测试程序时又发现问题,只得改了又改。大体情况是这样,当if或while块中只有switch或多个if组成的switch时,switch块的出口位置变为if else块之后的位置或是while的continue位置,为什么会是这样?因为要效率,所以要免去了多余的跳转。 问题已 阅读全文
posted @ 2020-05-06 23:58 ccddnet 阅读(159) 评论(0) 推荐(0)
摘要:上一篇说到switch语句后面通常会有一个br语句,而在switch和br之间可能会有不定量条件选择语句或default块,这是因为case的判断值不为整数或是很大的整数造成无法用数组下标的形式来规入switch跳转表数组,如果要是case的判断值全都是大整数或是非整数的话,那么switch也就不存 阅读全文
posted @ 2020-04-28 04:50 ccddnet 阅读(128) 评论(0) 推荐(0)
摘要:在switch语句的解析上大概花费了四个公休日和无数的零散时间,写了删,删了写,来来回回费劲,直到思路慢慢理清,总算完成代码。 在IL的switch语句中,operand是一个数组,执行的动作是从栈上pop出一个判断值,并以此数值为下标跳转到数组中的offset。原则上这可以跳转到代码的任何地方,未 阅读全文
posted @ 2020-04-08 00:29 ccddnet 阅读(186) 评论(0) 推荐(0)
摘要:清明节难得没有打扰的三天假期,全部贡献在这了。对于IL翻译回C#说实话,虽然有心理准备,但还是小瞧了它的难度,现在的卡点在流程控制语句上。 C#的编译器有两个很重要的原则,一是平栈原则,就是尽量少的使用栈,二是顺序原则,就是IL代码尽量按书写顺序从上至下从左至右编排,所见即所得 ,即使在编译时选择了 阅读全文
posted @ 2020-04-04 23:07 ccddnet 阅读(152) 评论(0) 推荐(0)
摘要:时间已经过了半年多,开发进度并不理想,虽然今年的新冠疫情让绝大部分人都有了大量的闲暇时间,可我就是那少一部分,过年都没得休息,而且工作量还加大了许多。不过我还没有放弃,毕竟是这个年龄了,能决定做一件事已经很难,决定了就要把它做下去。 以目前来看,界面并不美观,就是默认的风格,看上去就像十年前的工具软 阅读全文
posted @ 2020-03-20 14:32 ccddnet 阅读(189) 评论(0) 推荐(0)
摘要:最近一个吝啬至极的前同事突然要请大餐,这让我有点肝颤,果不其然是有求于人,也不知他听谁说的,说我多年前曾经指掌江山并在某方面小有建树,今天这是上门求援来了。具体是什么呢?公司上新项目,时间短任务重,就想把大海对面某公司的核心代码拿来一用,但公司里那些大牛纷纷表示自己不是牛,要么踏踏实实多招人加班加点 阅读全文
posted @ 2019-10-08 14:24 ccddnet 阅读(233) 评论(0) 推荐(0)
摘要:有个很惨的项目,已经一年多了,一直使用默认window的样子,版本和功能有点繁杂,一直被吐槽了很久,所以想利用最近的时间来重做一个漂亮的界面组件。既然要做那就认认真真的安排一下,首先要明确目的,就是这组控件打算做成什么样子,都有哪些功能。计划如下: 一、公共的控件类,并且方便扩展到其它项目 二、控件 阅读全文
posted @ 2019-10-08 12:51 ccddnet 阅读(310) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2014-10-27 09:47 ccddnet 阅读(7) 评论(0) 推荐(0)
摘要:前段时间在研究某游戏辅助,老外出品,支持七种语言,可这辅助相关的插件却少有中文,因为作者都是老外,并且他们不愿意添加中文。有一些没有加密的插件就被善良的国内用户使用工具软件手工汉化了,但是经过混淆加密的插件就比较困难了,一是需要解密,二是插件数量多更新快,最后弄得只好放弃。有一天,一位用户问我,能... 阅读全文
posted @ 2014-10-15 22:23 ccddnet 阅读(397) 评论(0) 推荐(0)
摘要:发现ConfuserEx这个开源的.NET混淆程序用的人也非常多,尤其是老外。屡屡遇到这东西,很头疼,主要是没有现成的脱壳程序,需要手动脱壳,虽说难度不大,但它更新的速度挺快,一直在变化,总是给人一种追着才能赶上的感觉,真是不爽。话说来,不知国内是真没有大牛,还是大牛都藏着掖着,那些脱壳的程序都是... 阅读全文
posted @ 2014-10-10 23:05 ccddnet 阅读(1078) 评论(1) 推荐(1)