| 赞 | 67 |
| VIP | |
| 好人卡 | |
| 积分 | 170 |
| 经验 | |
| 最后登录 | 2026-10-1 |
| 在线时间 | 6058 小时 |
- 梦石
- 0
- 星屑
- 17038
- 在线时间
- 6058 小时
- 注册时间
- 2011-7-18
- 回帖
- 152

|
发表于 2023-1-2 21:44:08
|
显示全部楼层
本帖最后由 gqxastg 于 2023-1-2 21:47 编辑
典型的编码问题
虽然看起来楼主放弃了,不过我这里还是试着解决了一下。确实原脚本因为年代久远也不推荐使用就是了
将以下代码新开一页置于“按需加载系统资源脚本”之下即可
[fold][pre lang="ruby"]module ZOZIENCODE
MultiByteToWideChar =
Win32API.new('kernel32', 'MultiByteToWideChar', 'iipipi', 'i')
WideCharToMultiByte =
Win32API.new('kernel32', 'WideCharToMultiByte', 'iipipipp', 'i')
def self.u2a(str)
m2w, w2m = MultiByteToWideChar, WideCharToMultiByte
i = m2w.call(65001, 0, str, -1, nil, 0)
buf = "\0" * i * 2
m2w.call(65001, 0, str, -1, buf, i)
i = w2m.call(0, 0, buf, -1, nil, 0, nil, nil)
ret = "\0" * i
w2m.call(0, 0, buf, -1, ret, i, nil, nil)
ret.chop
end
end
ZOZIRTPDIR = ZOZIENCODE.u2a(ZOZIRTPDIR)
alias fixencode_zozi_getfile zozi_getfile unless
defined?(fixencode_zozi_getfile)
def zozi_getfile(fname)
fixencode_zozi_getfile(ZOZIENCODE.u2a(fname))
end[/pre][/fold] |
评分
-
查看全部评分
|