设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1541|回复: 4
打印 上一主题 下一主题

[已经过期] RMXP 调用 ICOV 的方法(目前的问题是dll函数的参数)

 关闭 [复制链接]

Lv1.梦旅人

路人党员

梦石
0
星屑
52
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
跳转到指定楼层
1
发表于 2011-10-17 20:24:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 英顺的马甲 于 2011-10-20 15:29 编辑

就是 ruby 1.8 的 iconv ,
知道要从 ruby 1.8 里的 iconv.dll 和 charset.dll 着手调用,
但却不知道如何调用,
成功调用的话就方便多了。
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党

Lv3.寻梦者

酱油的

梦石
0
星屑
1030
在线时间
2161 小时
注册时间
2007-12-22
帖子
3271

贵宾

2
发表于 2011-10-18 10:01:27 | 只看该作者
單純 iconv 的話,可以到置頂中找 Win32API 的實現代碼。
不做頭像做簽名,看我囧冏有神(多謝山人有情提供 )
回复

使用道具 举报

Lv1.梦旅人

路人党员

梦石
0
星屑
52
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
3
 楼主| 发表于 2011-10-18 11:06:55 | 只看该作者
Shy07 发表于 2011-10-17 21:45
你可以试试夏娜做的require so库补丁
如果要用Win32API的话,下面这些是libiconv2.dll的函数
_libiconv_ver ...

谢谢了,那些函数我都知道,但是就是不会调用,
我是 API 白痴。
还有1.03 已经可以 require so 文件了,
只是不知为啥,在我的电脑突然失效了,
头疼当中。。。

点评

如果你能告诉我那些函数需要的参数,我倒可以帮你,我实在没时间去查= =  发表于 2011-10-18 11:14
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复

使用道具 举报

Lv1.梦旅人

路人党员

梦石
0
星屑
52
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
4
 楼主| 发表于 2011-10-20 15:29:52 | 只看该作者
本帖最后由 英顺的马甲 于 2011-10-20 15:31 编辑

几天后自顶
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2011-10-6
帖子
17
5
发表于 2011-11-6 18:24:15 | 只看该作者
本帖最后由 木下优子 于 2011-11-6 18:26 编辑

帮顶 —^— 咱也想知道 个人提供1VIP悬赏赞助
表示我只是来解读LZ签名的。
当你破解这个条码的时候,恭喜
但其实这毫无意义,只是一张签名图罢了
by 英顺的马甲
于是右侧真的解读出了脚本么 - - b 求脚本用途?
module MsgBox
  B_O = 0
  B_OC = 1
  B_ARI = 2
  B_YN = 4
  C_O = 1
  C_C = 2
  C_A = 3
  C_R = 4
  C_I = 5
  C_Y = 6
  C_N = 7
  CP_ACP = 0
  CP_UTF8 = 65001
  def self.u2s(text)
    m2w = Win32API.new('kernel32', 'MultiByteToWideChar', 'ilpipi', 'i')
    w2m = Win32API.new('kernel32', 'WideCharToMultiByte', 'ilpipipp', 'i')
    len = m2w.call(CP_UTF8, 0, text, -1, nil, 0);
    buf = "\0" * (len*2)
    m2w.call(CP_UTF8, 0, text, -1, buf, buf.size/2);
    len = w2m.call(CP_ACP, 0, buf, -1, nil, 0, nil, nil);
    ret = "\0" * len
    w2m.call(CP_ACP, 0, buf, -1, ret, ret.size, nil, nil);
    return ret.delete!("\000")
  end
  def self.show(msg="",title="",button=0)
    msgbox = Win32API.new('user32','MessageBox',['L', 'P', 'P', 'L'],'I')
    r, rs = msgbox.call(0, self.u2s(msg), self.u2s(title), button)
    return r
  end
end

点评

msgbox = MsgBox.show("你确定要退出吗?", "离开游戏", 1);exit if msgbox == 1  发表于 2011-11-6 19:39
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-24 06:31

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表