Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使python程序一次性使用?_Python - Fatal编程技术网

如何使python程序一次性使用?

如何使python程序一次性使用?,python,Python,有没有办法构造一个python程序,在使用一次之后,这个特定的程序在任何计算机上都不再可用?如果是,怎么做 请注意,我将把程序编译成.exe,以防事情变得更简单。更新:如果要运行程序,请仅禁用该副本?那么,简单的答案就是让程序自己删除。但是,您遇到了复制保护的基本问题:用户只需复制程序并单独运行它们,甚至可以在运行程序之前备份计算机,然后恢复备份,以避开您可能使用隐藏文件或注册表设置尝试的任何技巧。最终,您所能做的就是使程序很难运行两次,而不是不可能 让实际代码在服务器上运行,让脚本只向服务器

有没有办法构造一个python程序,在使用一次之后,这个特定的程序在任何计算机上都不再可用?如果是,怎么做


请注意,我将把程序编译成.exe,以防事情变得更简单。

更新:如果要运行程序,请仅禁用该副本?那么,简单的答案就是让程序自己删除。但是,您遇到了复制保护的基本问题:用户只需复制程序并单独运行它们,甚至可以在运行程序之前备份计算机,然后恢复备份,以避开您可能使用隐藏文件或注册表设置尝试的任何技巧。最终,您所能做的就是使程序很难运行两次,而不是不可能


让实际代码在服务器上运行,让脚本只向服务器发送一个请求,请求运行程序。服务器可以忽略第一次请求之后的任何请求


没有中央服务器?不可能。一个人在他的电脑上运行一个程序不能在其他人的电脑上禁用这个程序,除非这些程序以某种方式通信。即使如此,如果逻辑驻留在脚本中,简单地禁用检查也不太困难。

更新:如果要运行程序,只禁用该副本?那么,简单的答案就是让程序自己删除。但是,您遇到了复制保护的基本问题:用户只需复制程序并单独运行它们,甚至可以在运行程序之前备份计算机,然后恢复备份,以避开您可能使用隐藏文件或注册表设置尝试的任何技巧。最终,您所能做的就是使程序很难运行两次,而不是不可能


让实际代码在服务器上运行,让脚本只向服务器发送一个请求,请求运行程序。服务器可以忽略第一次请求之后的任何请求


没有中央服务器?不可能。一个人在他的电脑上运行一个程序不能在其他人的电脑上禁用这个程序,除非这些程序以某种方式通信。即使这样,如果逻辑驻留在脚本中,那么简单地禁用检查也不太困难。

我不懂python,但似乎需要两个程序。第一个是启动器,另一个是启动器加载的主程序,您只想运行一次,在启动器自身执行后被删除/变形,因此它将无法再次运行。我想作为一个windows程序员,我会用exe dll对来做这件事。。。我的答案可能不适用于python。

嗯,我不懂python,但您似乎需要两个程序。第一个是启动器,另一个是启动器加载的主程序,您只想运行一次,在启动器自身执行后被删除/变形,因此它将无法再次运行。我想作为一个windows程序员,我会用exe dll对来做这件事。。。我的答案可能不适用于python。

不太适用。我可以将脚本加载到虚拟机中,保存机器的状态,然后在每次运行脚本时重置虚拟机

另外,Py2exe、cx_Freeze、PyInstaller等生成的可执行文件很容易分解到原始源代码中,因此有些人甚至不需要走到虚拟机那么远就可以打破您的限制

我会把它做成一个网络应用,让用户购买访问令牌。软件完全在您的服务器上运行,因此它们没有任何可分解的内容



如果你真的不关心安全性,只需在注册表中添加一些键,或者在AppData中创建一个文件,在脚本运行之前进行检查。

不太关心安全性。我可以将脚本加载到虚拟机中,保存机器的状态,然后在每次运行脚本时重置虚拟机

另外,Py2exe、cx_Freeze、PyInstaller等生成的可执行文件很容易分解到原始源代码中,因此有些人甚至不需要走到虚拟机那么远就可以打破您的限制

我会把它做成一个网络应用,让用户购买访问令牌。软件完全在您的服务器上运行,因此它们没有任何可分解的内容



如果你真的不关心安全性,只需在注册表中添加一些键,或者在AppData中创建一个文件,在脚本运行之前对其进行检查。

python过去有crontab模块

也许在python脚本结束时,您可以获得时间,例如:

from datetime import datetime
str(datetime.now())

然后创建一个crontab,在不久的将来执行一个不同的脚本,并覆盖python文件。或者在Windows上,让python创建一个批处理文件,该批处理文件执行相同的操作,但在开始时会休眠一段时间,从python运行批处理文件,然后很快,这可能就是.py的结尾。

python过去有crontab模块

也许在python脚本结束时,您可以获得时间,例如:

from datetime import datetime
str(datetime.now())

然后创建一个crontab,在不久的将来执行一个不同的脚本,并覆盖python文件。或者在Windows上,让python创建一个批处理文件,该文件执行相同的操作,但在开始时会休眠一段时间,从python运行批处理文件,然后很快就可以结束.py。

只分发一个带有唯一密钥的URL的下载程序。将服务器设置为仅允许从授权密钥下载(显然,使密钥难以猜测),并在成功下载后禁用密钥

雇佣并设置响应人员,对坚持他们应该再次尝试的客户做出全天候响应,因为他们刚完成下载,就被闪电击中了,或者其他什么。要获得邪恶业力积分,请与MPAA合作,让他们向任何此类客户释放大量的律师助理攻击猴子。