【朔源码014】【matlabsolve函数 源码】【源码怎样阅读】mscorlib源码

时间:2024-12-22 22:55:36 编辑:桃源码头 充电 来源:ss加密源码分析

1.c#程序编译好以后包含Framework,安装程序巨大
2.C#语言的编译环境

mscorlib源码

c#程序编译好以后包含Framework,安装程序巨大

       é¦–先下载Salamander .Net Linker软件包。

       åˆ©ç”¨Salamander .Net Linker生成可脱离.net framework环境运行的程序

       Linker是一个命令行工具,源码朔源码014它以将我们的.net程序生成可脱离.net framework环境运行的程序 .

       Linker不支持中文的路径,在程序中也不能有中文的标识符.

       Linker 有2种部署方式-mdeploy和-native,-mdeploy方式提取的虚拟环境大概MB左右,而-native方式则是将MSIL代码转换为NativeImages,配合-il指令使用,最终提取出来的虚拟环境不到MB.

       è¯­æ³•åˆ†åˆ«æ˜¯:

       -mdeploy方式:linker -mdeploy -casoff 您的程序.exe (-casoff是为了避免一些bug)

       -native方式:linker -native -il System -il System.* -il mscorlib -il accessibility 您的程序.exe

       æ³¨æ„ï¼š-native方式必须附加这4个-il,意思是指这些程序集不转换为NativeImages,如果未附加-il,则非常耗时,而且提取出来的框架将近MB。

       è¿™é‡Œé‡‡ç”¨çš„Salamander .Net Linker是从网上下载的破解版,仅供交流学习之用.

       æ­¥éª¤:

       1,点击运行:setenv.bat自动定位到当前Linker所在的目录.

       2,采用上面提到的第二种方式.在提示符下输入:linker -native -il System -il System.* -il mscorlib -il accessibility mygamePath.exe,执行后,程序会在mygamePath.exe 所以目录下生成一个名叫mdeployed 的文件夹.里面就是生成的可以单独运行的程序了.

C#语言的编译环境

       ç›´æŽ¥ç”¨NET Framework自带的csc.exe进行编译就可以了,全命令行方式

       ======================

       C:\>csc /help |more

       Microsoft (R) Visual C# 编译器版本7.. [CLR version v1.0.]

       ç‰ˆæƒæ‰€æœ‰ (C) Microsoft Corp -。保留所有权利。

        Visual C# 编译器选项

        - 输出文件 -

       /out:<文件> 输出文件名(如果未指定,则从第一个源文件派生)

       /target:exe 生成控制台可执行文件(默认) (缩写: /t:exe)

       /target:winexe 生成 Windows 可执行文件 (缩写: /t:winexe)

       /target:library 生成库 (缩写: /t:library)

       /target:module 生成能添加到其他程序集的模块 (缩写: /t:module)

       /define:<符号列表> 定义条件编译符号 (缩写: /d)

       /doc:<文件> 要生成的 XML 文档文件

        - 输入文件 -

       /recurse:<通配符> 根据通配符规范,包括当前目录和子目录下的所有文件

       /reference:<文件列表> 从指定的程序集文件引用元数据 (缩写: /r)

       /addmodule:<文件列表> 将指定的模块链接到此程序集中

        - 资源 -

       /winres:<文件> 指定 Win 资源文件 (.res)

       /winicon:<文件> 使用该图标输出

       /resource:<资源信息> 嵌入指定的资源 (缩写: /res)

       /linkresource:<资源信息>将指定的资源链接到此程序集中 (缩写: /linkres)

        - 代码生成 -

       /debug[+|-] 发出调试信息

       /debug:{ full|pdbonly} 指定调试类型(“full”是默认类型,可以将调试程序

       é™„加到正

       åœ¨è¿è¡Œçš„程序)

       /optimize[+|-] 启用优化 (缩写: /o)

       /incremental[+|-] 启用增量编译 (缩写: /incr)

        - 错误和警告 -

       /warnaserror[+|-] 将警告视为错误

       /warn: 设置警告等级 (0-4) (缩写: /w)

       /nowarn:<警告列表> 禁用指定的警告信息

       /reference:<文件列表> 从指定的程序集文件引用元数据 (缩写: /r)

       /addmodule:<文件列表> 将指定的模块链接到此程序集中

        - 资源 -

       /winres:<文件> 指定 Win 资源文件 (.res)

       /winicon:<文件> 使用该图标输出

       /resource:<资源信息> 嵌入指定的资源 (缩写: /res)

       /linkresource:<资源信息>将指定的资源链接到此程序集中 (缩写: /linkres)

        - 代码生成 -

       /debug[+|-] 发出调试信息

       /debug:{ full|pdbonly} 指定调试类型(“full”是默认类型,可以将调试程序

       é™„加到正

       åœ¨è¿è¡Œçš„程序)

       /optimize[+|-] 启用优化 (缩写: /o)

       /incremental[+|-] 启用增量编译 (缩写: /incr)

        - 错误和警告 -

       /warnaserror[+|-] 将警告视为错误

       /warn: 设置警告等级 (0-4) (缩写: /w)

       /nowarn:<警告列表> 禁用指定的警告信息

       - 语言 -

       /checked[+|-] 生成溢出检查

       /unsafe[+|-] 允许“不安全”代码

        - 杂项 -

       @<文件> 读取响应文件以获得更多选项

       /help 显示此用法信息 (缩写: /?)

       /nologo 取消编译器版权信息

       /noconfig 不要自动包含 CSC.RSP 文件

        - 高级 -

       /baseaddress:<地址> 要生成的库的基址

       /bugreport:<文件> 创建一个“错误报告”文件

       /codepage: 指定打开源文件时要使用的代码页

       /utf8output UTF-8 编码的输出编译器消息

       /main:<类型> 指定包含入口点的类型(忽略所有其他可能的入口点)

       (缩写:

       /m)

       /fullpaths 编译器生成完全限定路径

       /filealign: 指定用于输出文件节的对齐方式

       /nostdlib[+|-] 不引用标准库 (mscorlib.dll)

       /lib:<文件列表> 指定要在其中搜索引用的附加目录

搜索关键词:synce源码分析