c++ - 在 C++ 中使用嵌入式 lua 从外部目录加载文件?

标签 c++ file lua directory

我正在使用 C++ 中的 lua 编写一个基本的脚本系统。我的一个胶水函数是从这里调用的:

lua_register(luaVM, "openFile", l_dial.l_specifyF);

并且编码如下:

static int l_specifyF(lua_State* luaVM) {
    const char* c = lua_tostring(luaVM, -1);
    cDialogManager::getSingletonPtr()->clearVector();
    try{
        luaL_dofile(luaVM, c);
    } 

    catch(...) {
        cout << "Unable to open file" << endl;
        luaL_dofile(luaVM, "startup.lua");
    }
    return 1;
}

当我在我的应用程序中调用它时,如果我从本地目录调用文件,如 openFile("somefile.lua")openFile("someotherfile.lua "),但在调用位于外部文件夹中的文件时会崩溃,例如 openFile("scripts/ohdear.lua")

请注意,这确实在某些情况下确实有效,这只会增加困惑。这有什么原因吗? 如何补救我的应用程序以使用外部目录中的文件?

最佳答案

根据您的描述,我严重怀疑它与文件夹结构有关。我的猜测是,您正在观察早期错误的后期 react ...

关于c++ - 在 C++ 中使用嵌入式 lua 从外部目录加载文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4052698/

相关文章:

python - 如何增加文件python中的最后一个数字

lua - 如何在Lua中匹配一个句子

c - Lua 在 PPC Micro 上的足迹

c++ - 从 SQLite 中的准备语句获取原始 SQL 查询

c++ - 在对 float : expression must have integral or unscoped enum type 执行平方和平方根时

linux - 如何在不提取整个文件的情况下更改存档 (.ear) 文件中的文件

Lua Separation Steering 算法将重叠的房间分成一个角

c++ - 增加指针时删除数组指针c++?

c++ - 用于空间和性能提升的位对齐

c# - 写入文件仅在 "step in" Debug模式下有效?