[#46725] [ANN] win32oleを活用したExcel操縦用ライブラリ exlap.rb — YOSHIIZUMI <t-yoshiizumi@...>
吉泉です。
6 messages
2010/01/04
[#46732] ヒアドキュメント内の変数展開が正常に行われない — ShingoKintaka <kamuycikap@...>
Ruby :1.8.7 (Ubuntu9.10)
12 messages
2010/01/05
[#46733] Re: ヒアドキュメント内の変数展開が正常に行われない
— rubikitch@...
2010/01/06
From: ShingoKintaka <kamuycikap@tulip.ocn.ne.jp>
[#46739] Re: ヒアドキュメント内の変数展開が正常に行われない
— ShingoKintaka <kamuycikap@...>
2010/01/06
るびきちさん、書き込みありがとうございます。
[#46755] [Security] WEBrick has an Escape Sequence Injection vulnerability — Urabe Shyouhei <shyouhei@...>
WEBrick has an Escape Sequence Injection vulnerability
4 messages
2010/01/10
[#46769] WindowsでGUIなRuby実行ファイルの作り方について — ShingoKintaka <kamuycikap@...>
Windows上(XP/Windows7)で開発したWideStudioアプリケーション(Ruby)につ
7 messages
2010/01/14
[#46770] Re: WindowsでGUIなRuby実行ファイルの作り方について
— ShingoKintaka <kamuycikap@...>
2010/01/14
自己レスです。
[#46771] Re: WindowsでGUIなRuby実行ファイルの作り方について
— H. Shimura <shimura-hir@...>
2010/01/14
dllファイルの同梱
[#46772] google-appengine について — 北村寛 <kitayuta@...>
北村と申します。
5 messages
2010/01/14
[#46779] 動的に生成されるメソッドの命名について — Moru <lateau@...>
44Oi44Or44Go55Sz44GX44G+44GZ44CC5pep6YCf44Gn44GZ44GM5LiA44Gk6LOq5ZWP44GV44Gb
5 messages
2010/01/16
[#46800] DLモジュールの使い方 — kouichi_someya@...
染谷と申します。
12 messages
2010/01/20
[#47678] プログラム実行時に「[BUG] Segmentation fault」
— 染谷 康一 <kouichi_someya@...>
2010/12/09
染谷と申します。
[#47681] Re: プログラム実行時に「[BUG] Segmentation fault」
— "U.Nakamura" <usa@...>
2010/12/10
こんにちは、なかむら(う)です。
[#46803] TkTable.rbで"[BUG] Segmentaion fauilt"発生 — 門脇 修司 <kadowaki.shuji@...>
門脇と申します。
9 messages
2010/01/22
[#46805] Re: TkTable.rbで"[BUG] Segmentaion fauilt"発生
— Hidetoshi NAGAI <nagai@...>
2010/01/24
永井@知能.九工大です.
[#46807] Re: TkTable.rbで"[BUG] Segmentaion fauilt"発生
— 門脇 修司 <kadowaki.shuji@...>
2010/01/25
門脇です。
[#46808] Re: TkTable.rbで"[BUG] Segmentaion fauilt"発生
— Hidetoshi NAGAI <nagai@...>
2010/01/25
永井@知能.九工大です.
[#46810] Re: TkTable.rbで"[BUG] Segmentaion fauilt"発生
— 門脇 修司 <kadowaki.shuji@...>
2010/01/25
門脇です。
[#46829] Exerbでexe化したiconvを使ったスクリプトでエラーが発生する — Nakamatsu Shinji <snaka.gml@...>
Ruby-listの皆さんこんにちは。
6 messages
2010/01/30
[ruby-list:46800] DLモジュールの使い方
From:
kouichi_someya@...
Date:
2010-01-20 23:43:50 UTC
List:
ruby-list #46800
染谷と申します。
現在、Felicaのデータを読み込むプログラムを勉強しています。
そこで、felicalibというライブラリがあることを知ったのですが、
どうもうまく利用ができません。
もしかすると、自分のやり方が間違っているのではと思い、
投稿しました。
felicalibを利用するためのプログラムは以下の通りです。
=================================================================
require 'dl/import'
module FelicaLib
extend DL::Importable
#dlload 'felicalib.lib'
dlload 'felicalib.dll'
typealias("uint8", "unsigned char")
typealias("uint16", "unsigned int")
typealias("uint16", "unsigned short int")
#=========================================================================
=#
#== felicalib.h
#=========================================================================
=#
extern "pasori* pasori_open(char*)"
extern "void pasori_close(pasori*)"
# extern "int pasori_send(pasori*,uint8*,uint8,int)"
# extern "int pasori_recv(pasori*,uint8*,uint8,int)"
extern "felica* felica_polling(pasori *, uint16, uint8, uint8)"
extern "void felica_free(felica *f)"
extern "void felica_getidm(felica *f, uint8 *buf)"
extern "void felica_getpmm(felica *f, uint8 *buf)"
extern "int felica_read_without_encryption02(felica *f, int servicecode, i
nt mode, uint8 addr, uint8 *b)"
extern "int felica_write_without_encryption(felica *f, int servicecode, ui
nt8 addr, uint8 *b)" # 警告:テストを実施していない。
extern "felica * felica_enum_systemcode(pasori *p)"
extern "felica * felica_enum_service(pasori *p, uint16 systemcode)"
#=========================================================================
=#
#== constants
#== システムコード (ネットワークバイトオーダ/ビックエンディアンで表記)
#=========================================================================
=#
POLLING_ANY = 0xffff
POLLING_SUICA = 0x0003 # システムコード: サイバネ領域
POLLING_EDY = 0xfe00 # システムコード: 共通領域 (Edy などが使用)
end
module FelicaLib
class << self
def felica_raw_values(systemcode, servicecode, little_endian = false)
values = []
b = Array.new(4).to_ptr
psr = pasori_open ""
pasori_init psr
flc = felica_polling psr, systemcode, 0, 0
i = 0
while felica_read_without_encryption02(flc, servicecode, 0, i, b)
== 0
row = b.to_a('I')
data = ""
row.size.times do |j|
if little_endian
4.times { |k| data += sprintf "%02x", (row[j].to_i >>
(8 * k)) & 0xff }
else
data += sprintf "%08x", row[j].to_i & 0xffffffff
end
end
yield data if block_given?
values << data
i += 1
end
pasori_close psr
values
end
end
end
=================================================================
上記プログラムは、felicalibの紹介しているHPで取得しました。
(一部、変更しています)
そして、テストプログラムは以下の通りになります。
=================================================================
require 'felicalib'
FelicaLib.felica_raw_values(FelicaLib::POLLING_SUICA, FelicaLib::SERVICE_SUICA
,true) do |data|
puts data
end
=================================================================
しかし、実行すると以下のメッセージが表示されます。
=================================================================
C:\SIGMA21\LIB>felica_dump.rb
C:/ruby-1.8/lib/ruby/1.8/dl/import.rb:126:in `symbol': can't find the symbol `
fe
lica_polling' (RuntimeError)
from C:/ruby-1.8/lib/ruby/1.8/dl/import.rb:145:in `import'
from C:/ruby-1.8/lib/ruby/1.8/dl/import.rb:61:in `extern'
from C:\SIGMA21\LIB/felicalib.rb:20
from C:/SIGMA21/LIB/felica_dump.rb:1:in `require'
from C:/SIGMA21/LIB/felica_dump.rb:1
=================================================================
何が間違っているのか、誠に申し訳ございませんが、何方かご教授ください。
以上