首先:也许这是一个 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:
您的代码将与项目的其余部分一起编译,但您应该知道反编译 C# 程序非常容易。
- 1 回答
- 0 关注
- 110 浏览
添加回答
举报
0/150
提交
取消