C# 强名DLL文件后修改DLL还能正常使用

fts115 2014-07-16 10:57:59
我做了个DLL文件,然后给签名了,在用反编译给文件修改了,修改后EXE文件竟然还能正常调用这个DLL文件。。。。
强名不是能防止修改文件本身吗?是我哪弄错了还是什么问题导致的。。。最好能给步骤如何能防止DLL被修改。
...全文
386 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
於黾 2014-07-21
  • 打赏
  • 举报
回复
引用 2 楼 fts115 的回复:
[quote=引用 1 楼 gomoku 的回复:] 强命名不是为了‘防止被修改’,而是为了保证你的程序只调用已知(通过强命名)的dll。 比如你的程序引用了a.dll,如果别人改动了a.dll,你的程序就会拒绝执行。
嗯。我就是A.DLL强名后自己又反编译修改了。但是程序还能执行。。。我很纳闷。程序根本没有拒绝。[/quote] 没用过强命名. 不过按1楼的说法,你强命名操作是在程序中,然后引用的DLL如果被修改就会拒绝执行 如果你强命名操作是在DLL本身,它自己当然不会拒绝执行. 应该是程序拒绝执行DLL,而不是DLL本身拒绝执行自身代码
fts115 2014-07-21
  • 打赏
  • 举报
回复
都没有知道的吗》?
fts115 2014-07-17
  • 打赏
  • 举报
回复
谁帮我解决解决。谢谢
fts115 2014-07-16
  • 打赏
  • 举报
回复
引用 1 楼 gomoku 的回复:
强命名不是为了‘防止被修改’,而是为了保证你的程序只调用已知(通过强命名)的dll。 比如你的程序引用了a.dll,如果别人改动了a.dll,你的程序就会拒绝执行。
嗯。我就是A.DLL强名后自己又反编译修改了。但是程序还能执行。。。我很纳闷。程序根本没有拒绝。
gomoku 2014-07-16
  • 打赏
  • 举报
回复
强命名不是为了‘防止被修改’,而是为了保证你的程序只调用已知(通过强命名)的dll。 比如你的程序引用了a.dll,如果别人改动了a.dll,你的程序就会拒绝执行。

110,533

社区成员

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

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

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