Project1

标题: 关于Iconv.dll [打印本页]

作者: 英顺的马甲    时间: 2012-6-6 14:13
标题: 关于Iconv.dll
玩API失败了,球高手鉴定问题
  1. module Iconv
  2.   @@IconvOpen = Win32API.new("iconv.dll","libiconv_open","pp","l")
  3.   @@Iconv = Win32API.new("iconv.dll","libiconv","lplpl","l")
  4.   @@IconvClose = Win32API.new("iconv.dll","libiconv_close","l","l")
  5.   def self.iconv(form,to,str)
  6.     buf = "\000" * 256
  7.     o = @@IconvOpen.call(form,to)
  8.     @@Iconv.call(o,str,str.size,buf,256)
  9.     @@IconvClose.call(o)
  10.     return buf.delete("\000")
  11.   end
  12. end
  13. p Iconv.iconv("UTF-8","ASCII","我")
复制代码
iconv的解说
dll在此: iconv.zip (624 KB, 下载次数: 71)
作者: 晴兰    时间: 2012-6-6 19:20
提示: 作者被禁止或删除 内容自动屏蔽
作者: 英顺的马甲    时间: 2012-6-6 20:47
晴兰 发表于 2012-6-6 19:20
第一个有问题的地方在第二行 libiconv_open 是cdecl调用约定 而不是WINAPI或者stdcall约定 不能直接使用Win ...

api无能,不太明白==
还有网址打不开==
作者: 第七水螰    时间: 2012-6-7 13:28
你寫一個 wrapper 調用 libiconv 的 __cdecl 函數,然後編譯為 __stdcall 就行了。
作者: yangff    时间: 2012-6-7 21:32
__stdcall也不行吧……大概……
作者: zhangbanxian    时间: 2012-6-25 12:03
- -b转码的话貌似可以直接winapi,c2w再w2cc神马的,连dll都不要了...




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1