我在C ++中编写了自动代码:
#include <fstream>
#include <cstdlib>
#include <string>
using namespace std;
int main()
{
ofstream sf;
sf.open("script_temp_file_id_b01.py", ios::out);
system("attrib script_temp_file_id_b01.py +h +s +a");
sf << "name = input(\"Enter your name: \")\n";
sf << "print(\"Hello\", name)";
sf.close();
system("script_temp_file_id_b01.py");
system("attrib script_temp_file_id_b01.py -h -s -a");
system("del script_temp_file_id_b01.py");
return 0;
}
这个程序打开一个文件并在其中写下自爆的python代码:
name = input("Enter your name: ")
print("Hello", name)
然后运行它。
当程序运行此代码时:
system("script_temp_file_id_b01.py");
脚本将被执行。
但是如果用户在脚本执行期间关闭程序,则以下两行将不会执行,并且脚本文件将不会删除:
system("attrib script_temp_file_id_b01.py -h -s -a");
system("del script_temp_file_id_b01.py");
我该怎么做?
答案 0 :(得分:0)
这取决于你的程序如何运行。如果使用CTRL-C中断程序执行,则可以捕获此事件。在这种情况下,this answer会对您有所帮助。
通常,执行后无法从程序中运行代码。但是你可以捕捉到大多数可能导致程序在早期被杀的事件。