草庐IT

windows - 如何在 lua 中递归地遍历 Windows 注册表?

我来自Linux领域,请多多包涵。我想递归地遍历Windows注册表。到目前为止,我所做的一切都是为了获取各个键的值>require'luacom'>sh=luacom.CreateObject"WScript.Shell">=sh:RegRead"HKCU\\Console\\ColorTable01"8388608还没有办法迭代注册表节点... 最佳答案 如果您需要使用Lua执行任何特定于Windows的操作,您的第一个调用端口应该是winapi图书馆;在这种情况下,您可以使用open_reg_key()枚举注册表项和Regke

windows - Windows的lua "stub"dll的用途是什么

我正在考虑将Lua合并到一个C++项目中,并且对来自Luabinaries的分发版中存在的两个二进制文件(lua51.dll和lua5.1.dll)感到有点困惑。.根据文档...InWindowsyourlibraryorapplicationmustbelinkedwithastublibrary.AstublibraryisalibrarywithonlythefunctiondeclarationsthatwillbindyourDLLwiththeLuaDLL.为什么?在与第三方DLL链接之前,我从来不需要stubDLL? 最佳答案

c++ - Windows 游戏 : UTF-8, UTF-16、DirectX 和 Lua

我正在为学习目的开发一个Windows游戏(我正在学习DirectX)。我希望它有UTF支持。Readingthisquestion我了解到windows使用的是wchar_t,也就是UTF-16。我希望我的游戏支持Lua脚本,并且Luadoesn'treallylikeUnicodemuch..它只是将字符串视为“字节流”;这对于UTF-8来说已经足够好了,但是UTF-16几乎不可能使用。长话短说:windows需要UTF-16,lua需要UTF-8。所以我想,让我们只使用带有普通char*和string的UTF-8!.length()会被搞砸,但谁在乎呢?但是它不起作用:const

windows - 重新打开关闭的文件 : Lua

我有一个名为backup.lua的文件,程序应该经常写入该文件以备份其状态,以防出现故障。问题是程序在第一轮完全没问题地写入backup.lua文件,但在其他任何时候它都拒绝写入该文件。我尝试在该程序仍处于打开状态时删除该文件,但Windows告诉我该文件正被“CrysisWarsDedicatedServer.exe”(即该程序)使用。我已经告诉宿主Lua函数关闭backup.lua文件,为什么它关闭后不让我随意修改呢?我在互联网上找不到任何东西(谷歌实际上试图纠正我的搜索)并且该项目的二级程序员也不知道。所以我想知道你们中是否有人知道我们在这里做错了什么?宿主函数代码:functi

c - lua5.2在windows中调用c dll

我的C代码如下:skype分析器.h#include"lua.h"#include"lualib.h"#include"lauxlib.h"#include"stdio.h"#include"stdlib.h"//dllexportfuncint_declspec(dllexport)luaopen_skypeAnalyzer(lua_State*L);skype分析器.c#include"skypeAnalyzer.h"#include#includeintrun(lua_State*L){printf("------->>>Hi!%s\n",lua_tostring(L,1));r

c - Lua 在加载 dll 扩展时崩溃

我正在尝试在Windows上创建一个Luadll扩展。我正在使用Lua5.3。我的编译器来自MinGW,是gcc4.9.3。我的dll扩展的C代码是这样的:#include#includestaticintdub(lua_State*L){constdoublea=lua_tonumber(L,1);lua_pushnumber(L,a*2);return1;}__declspec(dllexport)int__cdeclluaopen_mylib(lua_State*L){printf("One\n");lua_pushcfunction(L,dub);printf("Two\n")

windows - 为什么 LUA_PATH 包含一个爆炸 (!) 在 Windows 上损坏?

我有一个文件main.lua:require("hello")还有一个文件hello.lua在目录foobar!baz(包含!):module(...,package.seeall)print("hellofromhello.lua")当我(在Windows上)将环境变量LUA_PATH设置为目录时:setLUA_PATH="C:\Programme\Lua\5.1\foobar!baz\?.lua"我得到一个奇怪的错误:C:\Programme\Lua\5.1>luamain.lualua:main.lua:4:module'hello'notfound:nofieldpackage

c# - 如何在 C# 5.0 应用程序中嵌入 lua(或其他脚本语言)

首先,我想提前为我的英语申请。我的问题具体是关于在C#应用程序中我需要具备什么才能解释提供给所述应用程序的Lua脚本。Lua脚本必须能够访问用C#编写的类。在搜索堆栈溢出的答案后,我认为处理这个主题的问题已经过时(我认为在动态语言运行时成为.NETFramework的一部分之前就有人问过这些问题,我认为现在事情变得更简单了我们有DLR)。基本上,我想做的就是这个TypeThatExecutesLua.MethodToLoadLuaScript(script.lua);TypeThatExecutesLua.Execute();现在,假设我们不关心script.lua返回什么。但是在某些

c# - 防止 Lua 死循环

我使用lua接口(interface)在我的C#程序中获得lua支持,如果用户提交这样的代码,工作线程将卡住whiletruedoend我有一种方法可以检测无限循环是否正在运行,但我需要一种从工作线程退出DoString方法的好方法。有什么想法吗?编辑:@kikito,是的,我正在检测类似的东西。我遇到的问题是我找不到一种干净的方法来终止DoString方法,看起来Lua接口(interface)主类(Lua)有一些静态依赖性,因为如果我这样做lua.Close();在我的实例中,它会中止DoString方法,但下次我实例化一个lua类时newLua();它会崩溃,说一些关于保护内存的

c# - 在 C#/.Net 中解析 Lua 数据结构的最简单方法

有人知道用C#或任何.Net库解析Lua数据结构的简单方法吗?这类似于JSON解码,除了Lua而不是javascript。此时看来我需要自己编写,但希望已经有一些东西了。 最佳答案 感谢你们,我使用LuaInterface找到了我想要的东西这是我想阅读的Lua数据结构(“c:\sample.lua”):TestValues={NumbericOneMillionth=1e-006,NumbericOnehalf=0.5,NumbericOne=1,AString="astring"}下面是一些使用LuaInterface读取Lua数