Linker是一个命令行工具,它以将我们的.net程序生成可脱离.net framework环境运行的程序 .
Linker不支持中文的路径,在程序中也不能有中文的标识符.
Linker 有2种部署方式-mdeploy和-native,-mdeploy方式提取的虚拟环境大概40MB左右,而-native方式则是将MSIL代码转换为NativeImages,配合-il指令使用,最终提取出来的虚拟环境不到30MB.
语法分别是:
-mdeploy方式:linker -mdeploy -casoff 您的程序.exe (-casoff是为了避免一些bug)
-native方式:linker -native -il System -il System.* -il mscorlib -il accessibility 您的程序.exe
注意:-native方式必须附加这4个-il,意思是指这些程序集不转换为NativeImages,如果未附加-il,则非常耗时,而且提取出来的框架将近100MB。
这里采用的Salamander .Net Linker是从网上下载的破解版,仅供交流学习之用.
步骤:
1,点击运行:setenv.bat自动定位到当前Linker所在的目录.
2,采用上面提到的第二种方式.在提示符下输入:linker -native -il System -il System.* -il mscorlib -il accessibility mygamePath.exe,执行后,程序会在mygamePath.exe 所以目录下生成一个名叫mdeployed 的文件夹.里面就是生成的可以单独运行的程序了.
这个过程很简单.到纯净的XP系统上测试运行成功