如何避免.net程序被看到源代码? 程序如何脱离.net框架运行?

liberte 2010-08-31 05:11:56
很多是老机器,没.net框架
...全文
148 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Laputa_Island 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 kingboy2008 的回复:]
引用 2 楼 deyygywxf 的回复:
生成之后,没源码一样的可以运行呀。
程序好象不能脱离.net框架运行的吧


可以参考飞信的技术,就是不用安装框架的。
[/Quote]
飞信其实就是一个打包,而且..只是2.0的,以后升级反而麻烦
crackdung 2010-08-31
  • 打赏
  • 举报
回复
楼上说的,可行。




my blg
http://ufo-crackerx.blog.163.com/
hzexe 2010-08-31
  • 打赏
  • 举报
回复
最好就是用vb,vc,delphi这类发布时编译来写了.

代码和软件别人可以抄,运营和服务别人难完整抄去.

做多了,这其中的奥秘就知道了,,,简单混淆下就可
laj0600310219 2010-08-31
  • 打赏
  • 举报
回复
将程序打包啊。打包方法如下:
1 新建安装部署项目

打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定。

2 安装向导

关闭后打开安装向导,点击下一步,或者直接点击完成。

3 开始制作

安装向导完成后即可进入项目文件夹:

双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来。然后右击你的文件,创建快捷方式,然后把快捷方式分别复制或剪切到左边的"用户的'程序'菜单"和"用户桌面"中。这样安装程序安装完成后会在 "开始->所有程序"和"桌面"上生成程序的快捷方式。也可以直接在"用户的'程序'菜单"和"用户桌面"相应目录下新建快捷方式,然后定位到你的文件。

然后右击左边的"应用程序文件夹"打开属性对话框:将属性中的"DefaultLocation"的路径中的"[Manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是"C:\Program Files\你的用户名\安装解决方案名称";

然后打开解决方案管理器,右击你的解决方案名称,选择属性:打开的属性页中,选择"系统必备", 在打开的系统必备页中,在"指定系统必备安装组件的位置"中选中如下选择项:从与我的应用程序相同的位置下载系统必备组件。选上以后,在生成的安装文件包中包含.NetFramework组件 。好了,这样就完成99%了,然后点击"生成->生成解决方案",哈,生成成功!

4 制作完成

现在打开解决方案文件夹下的Debug文件夹,就可以看到生成的安装文件了。

5 关于"卸载"功能的添加

上面只介绍了简单的生成安装的方法,但是在VS2005下并没有直接生成卸载程序的功能,所以我们只好用msi来实现了,操作方法如下:

在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,这个文件在c:\windows\system32文件夹下,添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",当然这个关系不大,改不改都行。

然后创建一个快捷方式,放到"开始-程序"中,接下来我们要做的就是查找这个部署项目的ProductCode了,鼠标左键单击项目名称,记住是左键单击,然后点击属性标签,注意:不是右击的属性,这个区别很大,这时你就可以看到ProductCode了。

然后打开你创建的那个快捷方式的属性对话框,在Aguements属性中输入"/x {ProductCode}",好了,然后点击"生成解决方案"即可生成带有卸载功能的安装程序了。

---------------------------------------------------------
sln是解决方案,你打包了反而会有问题。 如果你怕别人看你的源码,建议用壳加密下,网上有很多,建议使用VMP这个壳,比较难脱。
wuyq11 2010-08-31
  • 打赏
  • 举报
回复
wonsoft 2010-08-31
  • 打赏
  • 举报
回复
.net是一个虚拟机,解释执行中间代码的,是不能脱离的。
至于避免看到源代码,可以用混淆、加壳等方法来实现。其中混淆不能真正的解决源代码安全的问题,只是把代码整乱,不像源程序那样直观罢了。
crackdung 2010-08-31
  • 打赏
  • 举报
回复
能脱离,但是不安全的,再有.NET程序要不被人看到源码是有点难的,至少我能看到,并且能将IL码还原代码。我建议你将时间放到怎样写好代码中,和服务中去。




my blog
http://ufo-crackerx.blog.163.com/
ajq1989 2010-08-31
  • 打赏
  • 举报
回复
飞信也装了轻量级的框架。

不能脱离吧。
灵雨飘零 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 deyygywxf 的回复:]
生成之后,没源码一样的可以运行呀。
程序好象不能脱离.net框架运行的吧
[/Quote]

可以参考飞信的技术,就是不用安装框架的。
Knife01055 2010-08-31
  • 打赏
  • 举报
回复
在vista以后的微软操作系统上,都内置了framework,可以自动支持运行的,如果是之前的,那你只能用其它语言开发了。c++.net貌似可以写非托管代码,不用CLR支持。
云瑀 2010-08-31
  • 打赏
  • 举报
回复
没.NET就不能跑了.....
用VC写Win32吧....
deyygywxf 2010-08-31
  • 打赏
  • 举报
回复
生成之后,没源码一样的可以运行呀。
程序好象不能脱离.net框架运行的吧
bdmh 2010-08-31
  • 打赏
  • 举报
回复
不能脱离,可以加壳,加混淆

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧