为了账号安全,请及时绑定邮箱和手机立即绑定

有没有办法将 DLL 的文件系统访问(仅读取)重定向到内存映射文件/目录?

有没有办法将 DLL 的文件系统访问(仅读取)重定向到内存映射文件/目录?

PHP
守着一只汪 2022-12-04 10:29:16
首先:也许这是一个 XY 问题:我真正想解决的是一个针对监视我们源代码的穷人保护方案。我们在 C# 项目中使用 HALCON(一个图像处理库);问题是 HALCON 部分存储为普通源,并且仅在程序开始时告诉 DLL 源在哪里时才由 DLL 编译/收集。我的意图是将源代码以加密形式保存在磁盘上,并在初始化 DLL 之前在程序开始时将其加载/解密到内存的一部分。这个想法是拒绝通过文件系统访问源代码(插入 USB 记忆棒并复制)——我知道这是一种相当薄弱的保护形式,如果我遗漏了一些明显和更好的方法,请报告。我一直在研究 RAM 磁盘,但这些磁盘无助于保护,因为应用程序是 24/7 运行的。基于内存的文件将是理想的,因为它们在应用程序关闭时消失并且应该或多或少对外界不可见,但我必须为 DLL 提供一个简单的 DOS 文件路径(例如“C:/HALCON/ourproject”)一个文件流/描述符,所以问题仍然存在,是否可以(在 Windows 中!)用驻留在 RAM 中的瞬态部分覆盖每个进程的文件系统。编辑:我正在使用 HDevelop 接口,也就是说,HALCON 过程是通过 HDevProcedure 对象调用的,该对象为过程调用 HALCON 解释器。
查看完整描述

1 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

您可以将程序转换为 C# 代码,而不是直接使用 HDevelop:File -> Export 或 Export Library Project:


//img1.sycdn.imooc.com//638c06210001d37a03780491.jpg

您的代码将与项目的其余部分一起编译,但您应该知道反编译 C# 程序非常容易。



查看完整回答
反对 回复 2022-12-04
  • 1 回答
  • 0 关注
  • 110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信