搜索

iVocaloid论坛

查看: 169|回复: 2

[其他] 请教一个关于lua工作插件的问题 [复制链接]

Rank: 2Rank: 2

0
3
0


UID: 158909
权限: 10
属性: 不明
发帖: 6 (0精)
积分: 22
章鱼: 0
大葱: 2
茄子: 194
注册:2017/9/24
存在感:36
Ehobits 发表于 2017/12/15 14:08:44 |显示全部楼层
本帖最后由 Ehobits 于 2017/12/16 10:30 编辑

最近想写一个lua插件,其中一个基础功能是获取lua所在的路径,并在其中建立一个TXT或ini文件。但由于局限于VOCALOID糟糕的lua脚本特性我试了一打获取自身路径的办法都不成功,只会返回空值
当前部分代码如下:
  1. local str = "abab.txt"
  2. -- 获取路径
  3. function stripFileName(str)  
  4.     return string.match(str, "(.+)\\[^\\]*%.%w+$")
  5. end  

  6. -- 获取文件名
  7. function getFileName(str)  
  8.     return string.match(str, ".+\\([^\\]*%.%w+)$")
  9. end  

  10. -- 环境参数在运行时传递。
  11.   scriptDir  = stripFileName(str)                -- Lua脚本所在的目录路径(包括末尾的分隔符“\”)。
  12.   scriptName = getFileName(str)            -- Lua脚本的文件名。

  13. function main(processParam, envParam)
  14.     -- 局部变量声明。
  15.         local retCode                        -- 函数的返回值。

  16.     -- 检查API版本。
  17.     if (envParam.apiVersion == nil) or (envParam.apiVersion == "") then
  18.         -- 当API版本无法获取时。
  19.         -- 显示错误消息并退出。
  20.                 VSMessageBox("该插件需要版本4.2.0或更高版本的VOCALOID 4。", 0)
  21.         return STATUS_NORMAL
  22.     end
  23.         
  24.         VSMessageBox(scriptDir .. scriptName,0)    --这里出错  提示“scriptDir” “scriptName”是空值

  25. return retCode
  26. end
复制代码

希望有懂lua的大佬帮我看一下,这个要这么解决,怎样才能取到自身路径和文件名。在下感激不尽

使用道具 举报

Rank: 2Rank: 2

0
3
0


UID: 158909
权限: 10
属性: 不明
发帖: 6 (0精)
积分: 22
章鱼: 0
大葱: 2
茄子: 194
注册:2017/9/24
存在感:36
Ehobits 发表于 2017/12/16 10:31:27 |显示全部楼层
没有大佬来回答吗

使用道具 举报

IA愛好者

Lv.3-章鱼烧

Rank: 3

0
9
0


UID: 161923
权限: 20
属性: 2.5次元
发帖: 13 (0精)
积分: 82
章鱼: 0
大葱: 9
茄子: 75
注册:2018/1/9
存在感:78
sean3424867 发表于 2018/1/12 11:38:37 |显示全部楼层
這是甚麼

使用道具 举报

您需要登录后才可以回帖 登录 | 注册/sign up

申请友链|Archiver|iVocaloid - 自由,开放,合作,共享    | 版权持有者点击这里进行举报

GMT+8, 2018/1/19 21:28

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部