#include using namespace dl; int main(int argc, char* argv[]) { Engine::Init(); //TestScriptAll(); //TestScript(SCRIPT_TEST_VECTOR); //TestScript(SCRIPT_TEST_EXPR); //while (true) //{ // log_msg("{:x}", UidGenerator::CreateUid()); //} log_info("程序名: {}", CodeCvt::MultiByteToUtf8(argv[0])); log_info("参数总数: {}", argc - 1); for (int i = 1; i < argc; i++) { log_info("参数{}: {}", i, CodeCvt::MultiByteToUtf8(argv[i])); } std::string lua_file; #ifndef NDEBUG //lua_file = "批量小写文件名.lua"; //lua_file = "批量清除图片透明色.lua"; //lua_file = "窗口示例.lua"; //lua_file = "批量缩放图片.lua"; //lua_file = "批量转换图片为PNG格式.lua"; //lua_file = "压缩文件(lz4).lua"; //lua_file = "解压文件(lz4).lua"; //lua_file = "批量计算文件哈希.lua"; //lua_file = "加密(AES-256).lua"; //lua_file = "解密(AES-256).lua"; #else if(argc > 1) lua_file = CodeCvt::MultiByteToUtf8(argv[1]); #endif // if (lua_file.empty()) { std::vector all_lua; File::SearchRule r; r._vecFmt = { "lua" }; r._vecFilter = { "dl_api.lua" }; File::GetPathFileAll("./", all_lua, r); if (!all_lua.empty()) { std::string str = "《dl lua工具库》\n"; str+="你可以直接拖拽lua文件到exe上执行,也可以执行以下操作\n\n"; while (true) { str += "输入数字,选择要执行的lua脚本(0表示退出):\n"; for (size_t i = 0; i < all_lua.size(); ++i) { str += fmt::format("{}.{}\n", i + 1, all_lua[i]); } log_msg0(str); str.clear(); int n = -1; std::cin >> n; if (n == 0) break; --n; if (n < 0 || n >= all_lua.size()) std::cout << "输入无效,请重新输入:" << std::endl; else { g_lua->DoFile(all_lua[n]); } } } } else { g_lua->DoFile(lua_file); } Engine::Release(); return 0; }