我在一家建筑项目公司工作,开发autocad工具,主要使用集成的vba编辑器。
公司希望将已开发的dvb文件保存在公司内部,或者让它们在外带时毫无用处。
因此,我知道be密码保护创建的dvb文件,代码可以被隐藏(尽管经过5分钟的google搜索,我发现解锁它们很简单。)我试图找到一种方法,开发的vba文件将被使用和执行在办公室,但他们的代码将被隐藏,员工将无法使用他们在办公室。
不过,我不知道这是否可能。我知道,如果我开发外部exe文件,我可以使用几种方法(运行前连接到本地服务器,使用USB键等),但我想知道我是否能保证我在AUTOCAD VBA编辑器中编写的代码不会被看到,也不能在办公室外使用。
谢谢你提前提供的帮助。
P.S:在Windows7 SP1上使用Autocad 2010
发布于 2015-01-07 14:58:47
简而言之,您不能完全保护您的DVB源文件。正如您所发现的,对于一个精通技术的用户来说,破解密码保护的信息是容易获得的,也是微不足道的。
如果您的目标是防止用户只带走DVB文件并将其用于其他地方(无需修改源代码),则可以将一些检查嵌入到代码中,这将导致失败。例如,按名称对域控制器进行ping,如果没有返回响应,则停止执行错误。但是,如果有人编辑了代码(请参阅上面的第一点),则可以将其删除。
如果您确实需要对源进行保护,则不希望使用DVB (这是VBA代码)路由。相反,你会想要用.NET开发一个真正的插件(这需要重写)。当然,这也不是万无一失的,因为.NET代码可以很容易地反编译到源代码中;但是,如果您通过一个好的混淆器运行它,即使是最专用的修改也会很困难(但仍然有可能)。
总之,没有办法完全保护你的来源,只会使人更难逆转工程师。
https://stackoverflow.com/questions/27821539
复制相似问题