win32 dll 调用

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。

编程之家小编现在分享给大家,也给大家做个参考。

#!evn ruby

require 'rubygems'
require 'dl'
require 'Win32API'

#dll文件名
dllname = 'mm.dll'

#dll里的函数名
method_name = 'convert'

#string buff
buff = 1.chr * 222

s = 'abc'

a =Win32API.new(dllname,method_name,'PP','v')

a.call(s,buff)

#http://www.kuqin.com/rubycndocument/man/addlib/dl.html
#C : 字符 (char)
#c : 指向字符的指针 (char *)
#H : short 整数  (short)
#h : 指向short整数的指针 (short *)
#I : 整数 (char,short,int)
#i : 指向整数的指针 (char *,short *,int *)
#L : long 整数 (long)
#l : 指向long整数的指针 (long *)
#F : 实数 (float)
#f : 指向实数的指针 (float *)
#D : 实数 (double)
#d : 指向实数的指针(double *)
#S : 不可变(immutable)字符串 (const char *)
#s : 可变(mutable)字符串 (char *)
#A : 数组(const type[])
#a : 可变(mutable)数组 (type[])
#P : 指针 (void *)
#p : 可变(mutable)指针 (void *)
#0 : void 函数(必须是原型的首字符)

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...