我已经完成了使用安装项目部署它的c#应用程序。安装应用程序后,它会在“Program Files”(或任何用户选择的)文件夹中创建文件和文件夹。
问题在于此应用程序的安全性。如果有人复制已安装的文件夹,然后在他的机器上运行应用程序,它运行正常。只有在使用安装文件在PC上安装应用程序时,才应运行该应用程序。但即使将已安装的文件复制到新PC然后运行“exe”也会导致应用程序执行。
我想防止这种情况发生。任何关于这个主题的帮助将非常感激。 我知道有很多方法可以达到这个目的,请指出一些。
答案 0 :(得分:2)
好。仔细听!
使用安装项目安装时,在cutom操作中添加一个程序集,这将在注册表中创建注册表项。
并在项目代码中包含初始行,用于检查注册,如果发现注册,则会进一步继续操作,如果没有,则会显示错误消息,请安装应用程序。这肯定会奏效;。
答案 1 :(得分:0)
运行安装程序已经在注册表中留下了一个密钥,就像所有其他应用程序一样。无需创建其他密钥。
遍历已安装的应用程序,寻找您的应用程序,如果不存在,请通知用户运行安装程序。
您应该查看注册表信息。这是一个很好的实现,如果没有安装,只为用户安装,或者为每个人安装,它将返回:
http://mdb-blog.blogspot.com.ar/2010/12/c-check-if-app-is-installed-for-all.html
注意:这不是实现复制保护的方法,只是为了验证您的设置过程是否相应地运行。
答案 2 :(得分:0)
您可能希望机器锁定您的应用程序,以便它只运行一台特定的计算机。这通常通过使用机器锁定或激活的许可证来实现。
查看提供此功能的CryptoLicensing。
免责声明:我为CryptoLicensing的开发商LogicNP Software工作。