草庐IT

lua_call

全部标签

c++ - Lua DLL 库依赖

我为windows创建了一个lua模块,一个DLL,它有很多依赖项。这些依赖关系是模块DLL正常运行所必需的,其中大部分依赖关系是C++运行时库(libstdc+-6.dll和libgcc_s_seh-1.dll等)。我正在尝试使用package.loadlib调用加载模块:init=assert(package.loadlib("C:\\Path\\To\\My\\Module.DLL","luaopen_MyModule"))init()依赖项和模块DLL位于与主要可执行文件的DLL不同的文件夹中。因此,似乎package.loadlib找不到模块的依赖项。当这些依赖项的路径被添加

windows - 使用 Lua 执行 powershell 命令

我有一个我使用的程序,它有一个板载lua编译器以允许自定义编写操作。由于工具本身非常有限,特别是如果它用于网络上的复杂react,我想使用Powershell而不是lua。os.execute()或io.popen()等方法使用来自Windows的标准命令行,而不是Powershell。有没有办法在lua中使用Powershell?我尝试用Powershell编辑器编写一个命令行脚本并用os.execute运行这个脚本,但它以文本文件的形式打开,最好直接在lua中编写命令,但如果没有其他方法,直接执行Powershell脚本也可以。(在Windows中,您可以使用鼠标右键“单击/使用P

windows - 编译lua,获取makefile CreateProcess错误

我正在尝试编译Lua1.1。为什么?因为我可以。这是makefile的内容。all:(cdsrc;make)(cdclients/lib;make)(cdclients/lua;make)clean:(cdsrc;makeclean)(cdclients/lib;makeclean)(cdclients/lua;makeclean)这是我在运行makeall时遇到的错误。(cdsrc;make)process_begin:CreateProcess((null),(cdsrc;make),...)failed.make(e=2):Thesystemcannotfindthefilesp

lua基础语法篇一

打印print("helloworld")注释单行注释多行注释--这是单行注释--[[这是多行注释]]赋值s="HelloWorld"--多重赋值a,b="Stringa","Stringb"--交换值,类似pythona,b="Stringa","Stringb"a,b=b,a数据类型Lua有8种基本类型,如下表类型说明nil空值,只包含一个nilboolean布尔类型number数值类型string字符串,用单引号或双引号表示tableLua中的表,其实是一个关联数组,数组的索引可以是数字、字符串或表类型function函数,由C或Lua编写的函数userdata表示存储在变量中的c数据结

windows - cl.exe 标志或设置以在/O1 或更高级别禁用尾调用优化(相当于 gcc -fno-optimize-sibling-calls)

我从事一个项目,我们维护自己的堆栈爬虫(出于各种原因)。我们需要能够以一定的可靠性抓取堆栈。目前我们遇到了一个问题,函数尾部调用了我们感兴趣的函数,并且我们的堆栈跟踪跳过了调试构建(/Od)中会出现的帧。我们已经禁用了帧指针优化和内联(/Oy-和/Ob0),因此我们可以获得更好的堆栈跟踪,但我们仍然希望能够启用一些优化(/O1)以使代码更快。但是,尾调用仍然会干扰我们的堆栈跟踪。是否有任何标志或设置可以在MSVC中禁用此优化?gcc有-f(no-)optimize-sibling-calls,涵盖了这一点。 最佳答案 不,您可以将尾

windows - 如何将 winapi 添加到 Lua for Windows

我已经安装了LuaforWindows“batteriesincluded”5.1.4-46。它没有我想要的一切。我正在尝试重写我在个人PC上使用的AutoIt脚本。我找不到访问Windows注册表的简单方法。WinAPImodulebySteveDonovan看起来它会给我我想要的东西。我还希望能够检索文件属性以确定目录是否为联结。我意识到我真正的问题不是WinAPI,但如果我学会了如何将它添加到LuaforWindows,我就有希望添加其他Lua插件。如何从LuaforWindows添加WinAPI到Lua安装?编辑:我找到了Lua5.1luaforwindows的二进制winap

c++ - 编译Lua 5.3 Mingw64 MSys2

我已经按照说明从官方网站(http://mingw-w64.org/doku.php)安装了mingw64和MSYS2。将bin文件夹添加到win7PATHvar。一切似乎都有效。我从MSYS2运行这个命令:gcc--version而且有效。现在我正在尝试安装Lua5.3(来自lua.org的lua-5.3.1.tar.gz)。我使用WinRAR解压缩文件。从MSYS2,我转到我的Lua目录cd/e/Programming/Libs/lua-5.3.1/然后我运行make命令mingw32-makemingw但它不起作用。我收到这条消息...cdsrc&&E:/Programming/

windows - 是否可以将断点条件设置为 "break when called by another thread"?

我正在调查一个可能由多线程引起的问题。数据不断被一个线程读取,我想看看它是否被另一个线程读取。我可以设置断点并按住F5并检查它是否在另一个线程中中断,但这有点烦人。是否可以将断点条件设置为“被另一个线程调用时中断”? 最佳答案 您可以设置一个过滤器(参见UsingBreakpoints)。例如,可以在ThreadId上设置过滤器。要设置过滤器,请右键单击断点,选择Conditions...,然后输入ThreadId!=作为过滤器表达式。确保表达式中没有任何空白字符。否则,您将收到一条不太有用的错误消息。

string - 为什么 CALL SET 在 CMD Windows 和 .CMD 文件中的工作方式不同?

我正在尝试以编程方式使用WindowsCMDSET字符串操作版本。SET的两个版本是...SETNew_String=%String:Old_Text=New_Text%在变量String中将Old_Text替换为New_Text,并在变量New_String中返回结果。SETNew_String=%String:~Number_Of_Chars_To_Skip,Number_Of_Chars_To_Keep%在变量String中,在跳过Number_Of_Chars_To_Skip之后提取Number_Of_Chars_To_Keep,并在变量New_String中返回结果Old_T

windows - fatal error : Call to undefined function mysql_connect() with Windows Vista, PHP5、MySQL 和 Apache2

我正在努力让PHP连接到Apache环境中的MySQL数据库。我试图自己解决这个问题,但是,我在这个问题上花费了太多时间而没有解决方案。在我的php.ini文件中,我有以下内容(经过广泛研究,这似乎是所需INI语句的共识):;Directoryinwhichtheloadableextensions(modules)reside.;extension_dir="./"extension_dir="C:\php\ext"extension=php5apache2_2.dllextension=msql.dllextension=php_mysql.dllextension=php_mys