zoukankan      html  css  js  c++  java
  • DotNet程序汉化过程--SnippetCompiler简单解说

    SnippetCompiler介绍

    平时要验证一段C#代码或者写一个算法,就得打开庞大的VS新建一个解决方案,占用了硬盘空间不说还费时费力。SnippetCompiler这个工具就可以在这里帮到我们了,他是一个基于Windows应用程序,很小巧,总共也只有3.27M,但是不要因为体积小就小瞧了他,他可是可以像VS那样编写、编译链接、运行代码的。

     

    主要使用工具

    ildasm.exeilasm.exe,前一个是把应用程序、DLL等反编译成ilres代码,后一个是把*.il*.res代码编译成可执行文件或者DLL的。

    PEID

     

    具体步骤

    第一步:使用PEID查看一下程序的信息,看看有没有壳,是用什么语言编写的。

     

    我查了一下这款软件,看见没有,没有壳而且是.Net的编写的。至于脱壳的不在此篇章 范围之列。

    第二步:使用ildasm打开SnippetCompiler,文件->转储,选项默认即可。

     

    保存成功后就可以看见IL代码文件了。

     

    好多文件,其中文件后缀名为il的和res的就是我们所需要的文件了。

    第三步:使用记事本打开il文件,然后对应程序里边的英文文字查找字符并替换字符。

     

     

    这里要注意的有两点:

    1、字符串是跟在一个“ldstr”后边的,而且有快捷键的按钮文字前边会有一个“&”字符,替换的时候最好不要把这个字符也替换掉,但有时也可以。

    2、查找字符要根据上下文以及程序中的前后文来判断是不是这个文字。

    这里我们就是个演示,所以先改一个试试。把“&Find Next”改为“&查找下一个”, 保存。

    第四步:使用ilasm编译代码,这里我使用一条批处理。

    C:WINDOWSMicrosoft.NETFrameworkv2.0.50727ilasm.exe /RESOURCE=SnippetCompiler.res SnippetCompiler.il

    把他保存为bat文件放到il代码的文件加下执行,当一大串的没看见的东西跑完后,如果能看到,那么恭喜你,你可以去看看你汉化的程序了。

    这里值得注意的是Framework的版本要选2.0的,要跟程序的版本一致才行。

     

    运行结果:

     

  • 相关阅读:
    laravel5.5
    yii2.0 Activeform表单部分组件使用方法
    putty连接远程局域网的MySql(不需要单独打开plink)
    关于 CentOS 自启动(服务、脚本)
    make -j 多核并行编译 导致笔记本过热 自动关机保护
    CentOS 7 引导 -- GRUB2
    Centos 7 拨号上网(PPPOE)
    Centos 7 意外断电如何处理
    Windows/Linux 生成iOS证书及p12文件
    git add -f
  • 原文地址:https://www.cnblogs.com/GodFinal/p/3483918.html
Copyright © 2011-2022 走看看