对于“如何做只能执行一次的vb程序”题设的详细说明,寻求答案中…

来源:百度知道 编辑:UC知道 时间:2024/06/06 05:49:38
我是想提高一个程序的安全性,就是我授权一个用户在他的机子上使用我的软件,但是他将这个程序转拷给别人后别人的机子不能用。题设只是程序中想添加的一部分,就是第一次运行的时候检查注册表里是否写了相关信息,如果没有,在注册表里加点东西,然后第二次运行时直接检查注册表里所写的那个,原来第一次运行时在没找到后向注册表里添加信息的那段代码就不再执行了。这样一来,若是转到其他机子上,程序运行时是直接检查注册表,而不会在没找到相关信息的时候再去往里面写,而是禁止运行该程序。
这个方法是我突然想到的一种安全策略,比授权一个序列号要好点,因为我授权的序列号也算不上序列号,只是一个通用许可证,用这个号任何机子都能用,这也是我能力所限,毕竟只是课余爱好。当然,这个想法破是很好破,但对于一般的菜鸟级用户就足够了,而且我的那些软件也只是小东西,只是想往里面多加点貌似高深的东西而已
再说明白些,其实就是第二次运行时跳过那部分往注册表里添加相关信息的代码,似乎要在程序里定义静态变量,但好像又无法这么做,求各位vb大师教教我!
这样一来,如果不是原来的纯净的,一次都没有执行过的原版,那么就只能在注册表里添加有信息的机子上使用了,其他的机子因为注册表里没有添加相关信息而无法使用这个软件。
确实如gogoyangsoft大师所言,似乎应该是在第一次注册的同时程序要做一次自修改,或者说修改某个文件中的某个数据,以标记本程序已经注册过了,这样再考到另外一台电脑上,你也可以识别目前程序是不是(完璧)了。至于具体应该怎么做呢,还请各位大师教教我

我觉得应该是在第一次注册的同时程序要做一次自修改,或者说修改某个文件中的某个数据,以标记本程序已经注册过了,这样再考到另外一台电脑上,你也可以识别目前程序是不是(完璧)了,呵呵.
再扩展开说你还可以在第一次注册时读取主机信息,写进资源里或别的什么地方,这样你就可以判断用户有没有换到另一台电脑上使用.
当然被破解是必然的,如果你还不放心,可以把安装时的主机信息(例如如主板编号)读出来发到你的远程数据库上,这样即使你的用户因为某种原因更换了主板也无法再使用你的程序,不得不打电话给你咨询,你也可以再收一次服务费了.哈(此方法较无德,本公司从未干过)

我没太注意看你说的,就是说下,也不知道行不行,不行的话别骂我。。。试下输出从定向,管道重定向,运行以后自动删除。