我们一直在尝试编译长字符串(> 8192)来创建数据库更新程序(在MSSQL数据库上运行查询)。现有的NSIS系统(v2.5或v3.0)无法编译我们的字符串。以前,这里报告了一个特殊构建的NSIS (NSIS Special Build - Logging and Long String (8192 byte)),但在登录时遇到了编译问题。任何人都有一个特殊构建的可以编译字符串> 8192的脚本吗?谢谢。
答案 0 :(得分:0)
避免类似问题的常用路线是创建帮助脚本(js或vbs),在此处移动文本处理并将其称为外部,如:
nsExec::ExecToStack 'cscript /NOLOGO //E:jscript script.js param1 param2...'
ExecToStack将执行从用户看不到的脚本并将结果放入堆栈。
此外,您可以(但实现起来更难)使用手动内存分配和缓冲二进制输入/输出来编写文本处理。