首页
社区
课程
招聘
[原创]NetBox35发布
2008-11-1 17:15 5521

[原创]NetBox35发布

2008-11-1 17:15
5521
NetBox35使用简要说明
1.构成: Net 3.5(SP1)(包括了从1.0.X-3.5SP1的所有运行库平台)+VJ#2.0运行库+VC2005运行库+VC2008运行库
2.使用方法
1).直接点击启动:进入一个继承了Net环境的CMD Shelll,然后就可以运行Net程序或运行相关编译命令,如C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe
2).把Net程序拖到NetBox35.exe的图标上启动运行
3).通过编写一个BAT文件来启动如,写入:   “ NetBox35   C:\windows\notepad.exe   Mytext.txt ”则运行记事本程序并打开Mytext.txt文本,也就是说支持任意参数传递。
3.测试软件:均从网上找来的,一个是某个同志写的Norton Remove Tools(需要3.5平台支持),一个是一个小游戏(需要2.0平台支持),均测试成功,见附图。
1).不通过NetBox35在未安装Net环境的系统上运行。

2).通过NetBox35在未安装Net环境的系统上运行。

4.FAQ
1)为什么体积这么大?
Net3.5SP1的完整安装包体积就有231M(而且还有部分文件(大概9M)还是要从网上下载的),再加上VJ#2.0运行库+VC2005运行库+VC2008运行库,安装后的体积为近500M,为了保证最大程序的兼容性,本人基本未做精简,只删除了一些安装程序留下的垃圾和与运行无关的文件。。再进行压制处理,才缩小到107M,已经是极限了。。。如果你有更好的精简方案,也可以自行制作(方法如Q2)
2)这个东东是怎么做出来的?
其实在有人制作出DotNetBox(2.0平台)的时候,我也很好奇,但到目前为止还不知道他的制作原理。可惜没有人提供包括3.5的版本的,我也只能自己做了。。。我的方法很简单,没有什么技术含量,就是自己再写了一个引导头程序(Delphi写的)和干净的Net35一起用ThinApp打包,引导头程序源码也很简单,如下:
////////////////////Code By Crystalxp(Crystalmoon) 2008.11.1////////////////////////////
NetBoxVars:='';
if ParamStr(1)='' then
begin
ShellExecute(0, 'open', PChar(GetSysDir+'cmd.exe'), nil, nil, 5);
end
else
begin
for   i :=2   to   ParamCount   do   
    NetBoxVars:=NetBoxVars+' '+ParamStr(i);
ShellExecute(0, 'open', PChar(ParamStr(1)), PChar(NetBoxVars), nil, 5);
end;
////////////////////Code By Crystalxp(Crystalmoon) 2008.11.1////////////////////////////
/////My Blog: http://hi.baidu.com/crystalxp2008 /////////////////////////////////////

Pediy和UnPackCN同时发布,因为深度这两天关闭维护中,就不发了。。呵呵

By Crystalxp(Crystalmoon)  2008.11.1 PM.3

下载地址http://www.brsbox.com/filebox/down/fc/b29516d225acf7d56a2cd1e3b4e8d87a

[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (5)
雪    币: 370
活跃值: (15)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
快雪时晴 4 2008-11-1 19:26
2
0
不错的东西,以为是升级了,原来是另一位大侠做的

愿租此楼给MegaX进行讨论
雪    币: 134
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
crystalxp 2008-11-2 15:57
3
0
是的,欢迎大侠们提出改进意见。。比如如何再精简的,大家探讨探讨,。。。。。目前我只删除了assembly下的NavtiveImagesXXXX目录和Framwork目录下的一些安装包目录(就是安装程序把自身解压到了这些目录下,没有必要),其它还未作精简(一方面是不想减免功能,另一方面,对Net的结构也不太熟。。。多删怕出问题)。。。。在UnPackCN上发布后,看到有些人只说风凉话,却不提中肯的建议,感觉有点心凉。
雪    币: 133
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
niuhacker 2008-11-2 16:17
4
0
顶一下楼主。
雪    币: 5276
活跃值: (406)
能力值: (RANK:1170 )
在线值:
发帖
回帖
粉丝
tankaiha 29 2008-11-2 19:07
5
0
欢迎mega来讨论
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wuyong 2008-11-2 19:30
6
0
关于DOTNETBOX的看法和Thinstall的结合!脱离框架运行Net程序!

看了N个论坛和N种“脱离Net框架运行”的帖子!感触颇深!顾有这帖!
首先、如果你是C成员的话,应该没有下面的说法!
第二、Net框架的确是很好的一个应用环境!
第三、如果你真的想不用Net框架的安装方式发布你的程序(并且又想使用Net框架在你的应用程序里)的话,你可以继续像下看!否则请看别的帖子!
第四、开始切入正题!
第5、你可以编写任意的程序,不管是CS构架还是BS构架,只要你喜欢Net控件和框架带来的简洁!否则你需要NotNetBox吗?
第6、编写完程序后你需要知道的几点:1、你调用了哪些东西,这个问题对于C成员的话应该是很好理解的,但是(CL)除外,你需要知道你的最低运行的环境和最高的运行环境,是WIn95?还是Win2008?2、最好的建议开始了,你可以使用各种软件的监视软件进行查看你的程序需要用的的不管是DLL还是NLP还是EXE还是对注册表的操作(当然,建议使用ProcessMonitor2.1以上版本)这样,你就知道你的程序到底用了些什么东西和做了些什么操作!3、在知道你的程序是在每个操作系统里面干了些什么以后,做个详细的记录,把系统自带的东西挑出来,备用!呵呵
第7、我喜欢THinstall,它可以完全的虚拟你的应用(呵呵!但是如果你试图使用它打包你的Net程序的话,你肯定会后悔!因为的确太大了!哈哈)
第8、把第6点说的挑出来的东西,与你想运行的干净的每个环境的文件对比一下,把每个干净环境中没有的留下,有的去掉(当然!不要忘了路径,呵呵!)
第9、进行总结!
第10、把你的Net程序(按照总结出来的东西,不管是用到的文件还是对注册表的操作)用任意的安装打包工具进行打包!找个干净的Win环境(最好在虚拟机中)进行Thinstall监控下的安装和运行!好了!最小的Net框架下的独立运行,已经产生了,当然不要问我怎么使用Thinstall,我不是它的作者!嘿嘿!

后记!还有更好的,你可以用C或者C++编写一个Linker来判断,Win环境中是否已经安装了Net框架,如果安装了不要我说了吧,不过最好的提醒不是这个,如果你知道你到底需要什么Net组件的话,你完全可以编辑一个与你的程序毫不相关的运行在Win环境下的虚拟环境,并且这个环境中只有你需要的Net组件,用这个应用环境来启动你的程序,是不是很爽?(不用动你的脑子,Thinstall,就已经不错了)当然你也可以使用Remotesoft的一个虚拟环境来实现,其实都一样!

我测试过!用Net2.0框架(1.1要小些)如果只是编写一个简单的应用的话,在XP环境下,5M至!8M左右的大小的完全虚拟是可以的!

经验总结而已!希望赐教!
游客
登录 | 注册 方可回帖
返回