■◇FeliCa でソフトを作りまくるスレ◇■at TECH
■◇FeliCa でソフトを作りまくるスレ◇■ - 暇つぶし2ch809:デフォルトの名無しさん
07/10/24 18:47:52
卒研でRFIDシステムについてやることになりました。
そこでSDK for FeliCa LiteとPaSoRiを先生から渡されたのでプログラムを考えるのですが、RFIDカードってSuicaでおkですか?
Suicaって個人で書き込めるフリー領域はあるのでしょうか。
暗号化されていない領域はあるらしいけどそれは、駅名などの記録らしくてよくわかりません。
チュートリアルでSuicaを読み込むと当たり前ですが
URLリンク(www.uploda.org)
のようになってます。
環境は
【OS】Windows XP Professional SP2
【CPU】Pentium 4 3.0GHz
【RAM】2048MB(1024MB*2)
【PaSoRi】RC-S320
【開発ソフト】SDK for FeliCa Lite
【使用しようと思っている言語】C言語
です。


情報があまり見つけられない状態でこのスレ見つけたのですごくホッとしてますw

810:デフォルトの名無しさん
07/10/24 18:54:42
このスレ10回ヨメ

811:デフォルトの名無しさん
07/10/25 00:48:10
>>809
この台詞言うのも飽きたが、
その先生に聞け!

812:デフォルトの名無しさん
07/10/25 01:28:00
鍵無しで書き込みができるエリアなんて、SuicaやPASMOにはないし、商用システムで
そういうエリアを用意することは、ほとんど無い。
自前でテスト用カードを入手するか、DoCoMoのおサイフケータイのフリーエリア使う
ぐらいしかない。おサイフケータイのフリーエリア使いたかった、JAVAやiアプリの
知識と開発環境も必要。

ていうか、正規にSDK購入したんだったら、サンプルカードが2~3枚付属している
はすだが? なければ、ICS-E003/05Jを買え。

813:デフォルトの名無しさん
07/10/25 15:53:49
>>810-812
先生に聞いたらよくわかんないからとりあえず調べてみてと言われてずっと調べてました。
SDK for FeliCa Liteというものをどこで購入したのかは知りませんが、カードは付属していなかったようです。
先生にSuiCaやEdyでは書き込みができないということを言ってカードを購入してもらうしかないようですね。

814:デフォルトの名無しさん
07/10/25 23:09:23
雑な先生だな。知らないくせに人に教えてるのか

815:デフォルトの名無しさん
07/10/26 11:13:00
まあよくあるw

816:デフォルトの名無しさん
07/10/27 13:33:18
研究の場合、先生は教えない

817:デフォルトの名無しさん
07/10/27 14:30:02
知識が無ければ教えられないよな

818:デフォルトの名無しさん
07/10/28 18:05:42
どうせやるならハッキングしろよ。
自分達でオリジナルでGPLなLib作成とか
売ってるFelicaLibraryでRFID物やっても大した成果にならんだろ
普通のPGでも作れる物が卒研とはアホ?

819:デフォルトの名無しさん
07/10/31 02:26:59
>>808
auもFaver2.0のおサイフケータイはコンテナ情報が取れますよ.

URLリンク(www.nttdocomo.co.jp)
でいうところのキャリア識別コードがauは,0x000002のようです.
全機種チェックしたわけじゃないけどね.

Faver1.5のおサイフケータイは,フリー領域のpollingに答えればドコモって
今のところは言ってもいいんじゃないですかね.
auかSoftBankかはFaver1.5のおサイフケータイではわからんですね..

FeliCaだけで考えれば,これくらいのキャリア判別・機種判別であまり
困ることはないように思うんですけど,
FeliCaで携帯キャリア判別して何をするのか興味があります...



820:デフォルトの名無しさん
07/10/31 23:10:27
>>818
そもそもその教授はRFIDがなんたるかも理解してないと思うなwww

ひょっとして、神奈川大学の例の教授だったりしてw

821:デフォルトの名無しさん
07/11/04 21:03:27
URLリンク(www.dependencywalker.com)
これ使って、とりあえずfelica.dllの関数名はほげれた。
SDK使わずにどこまでいけるか・・・

822:デフォルトの名無しさん
07/11/05 01:51:27
>>821
には大いに頑張ってもらいたい自分がいる

俺?
SDK使って楽しててサーセンwww

823:デフォルトの名無しさん
07/11/05 08:31:18
>>821
どうせやるんなら
PCとパソリを繋げてsnoopyとかでキャプチャーしながら
Edyとか他のカードでIDmポーリングとかをしてパケットを
キャプチャーしてりして解析しないと・・・・・

824:デフォルトの名無しさん
07/11/05 22:05:59
>>821

felica.dll を使って FeliCa にアクセスするライブラリを作ってみたので、
よければどぞー。

URLリンク(felicalib.sourceforge.jp)

非セキュリティエリアはこれで読み取れる。libpasori に API はあわせたけど、
100% は無理だった。要望などあればどうぞ。

825:821
07/11/05 22:10:18
>>822
気分はぬるぽ

>>823
やあ、さすがにそこまでは。

とりあえずIDは読み出せたよ。
スレにもお世話になったので成果はいくらか晒しておくよ。
------------以下ソース---------------
felipas.h
-------------------------------------
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>

typedef struct {
unsigned char* system_code;
unsigned char time_slot;
} POLLING;

typedef struct {
unsigned char* card_idm;
unsigned char* card_pmm;
} CARD_INFORMATION;


826:821
07/11/05 22:11:06
typedef struct {
HWND handle;
unsigned char* message_of_card_find;
unsigned char* message_of_card_loss;
unsigned long interval;
unsigned long retry_count;
} CALL_BACK_PARAMETERS;

typedef BOOL (*INITIALIZE_LIBRARY)(void);
typedef BOOL (*DISPOSE_LIBRARY)(void);
typedef BOOL (*OPEN_READER_WRITER_AUTO)(void);
typedef BOOL (*POLLING_AND_GET_CARD_INFORMATION)(POLLING*, unsigned char*,
CARD_INFORMATION*);
typedef BOOL (*GET_LAST_CARD_INFORMATION)(CARD_INFORMATION*);
typedef BOOL (*SET_CALL_BACK_PARAMETERS)(CALL_BACK_PARAMETERS*);
typedef BOOL (*START_POLLING)(POLLING*);
typedef BOOL (*STOP_POLLING)(void);

INITIALIZE_LIBRARY initialize_library;
DISPOSE_LIBRARY dispose_library;
OPEN_READER_WRITER_AUTO open_reader_writer_auto;
POLLING_AND_GET_CARD_INFORMATION polling_and_get_card_information;
GET_LAST_CARD_INFORMATION get_last_card_information;
SET_CALL_BACK_PARAMETERS set_call_back_parameters;
START_POLLING start_polling;
STOP_POLLING stop_polling;


827:821
07/11/05 22:13:06
HINSTANCE hInstFelicaDLL;

void print_binary(unsigned char* binary, int length);

__declspec(dllexport) int LoadFelicaLibrary(void);
__declspec(dllexport) int FreeFelicaLibrary(void);
__declspec(dllexport) int PollingAndPrintID(void);
__declspec(dllexport) int PollingOnce(char* idm, char* pmm);
__declspec(dllexport) int GetLastCardInfo(char* idm, char* pmm);
__declspec(dllexport) int SetCallback(HWND hWindow);
__declspec(dllexport) int StartPolling(void);
__declspec(dllexport) int StopPolling(void);

------------felipas.h ここまで-----------------
-----------------------------------------------
felipas.c
-----------------------------------------------
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "felipas.h"

__declspec(dllexport) int PollingAndPrintID(void)
{
POLLING polling;
CARD_INFORMATION card_information;
unsigned char system_code[2];
unsigned char number_of_cards;
unsigned char card_idm[8];
unsigned char card_pmm[8];


828:821
07/11/05 22:13:56
system_code[0] = 0xff;
system_code[1] = 0xff;
polling.system_code = system_code;
polling.time_slot = 0x00;
number_of_cards = 0x00;
card_information.card_idm = card_idm;
card_information.card_pmm = card_pmm;

if (!polling_and_get_card_information(&polling, &number_of_cards, &card_information))
{
printf("ポーリングに失敗しました。\n");
return (-1);
}
else
{
printf("IDm : ");
print_binary(card_idm, 16);
printf("PMm : ");
print_binary(card_pmm, 32);
}

return 0;
}

__declspec(dllexport) int PollingOnce(char* idm, char* pmm)
{
POLLING polling;
CARD_INFORMATION card_information;
unsigned char system_code[2];


829:821
07/11/05 22:14:38
unsigned char number_of_cards;
unsigned char card_idm[8];
unsigned char card_pmm[8];

system_code[0] = 0xff;
system_code[1] = 0xff;
polling.system_code = system_code;
polling.time_slot = 0x00;
number_of_cards = 0x00;

card_information.card_idm = card_idm;
card_information.card_pmm = card_pmm;

if (!polling_and_get_card_information(&polling, &number_of_cards, &card_information))
{
printf("ポーリングに失敗しました。\n");
return (-4);
}

strcpy(idm, card_idm);
strcpy(pmm, card_pmm);

return 0;
}

__declspec(dllexport) int GetLastCardInfo(char* idm, char* pmm)
{
CARD_INFORMATION card_information;
unsigned char card_idm[8];
unsigned char card_pmm[8];


830:821
07/11/05 22:15:33
card_information.card_idm = card_idm;
card_information.card_pmm = card_pmm;
if (!get_last_card_information(&card_information))
{
printf("情報取得に失敗しました。\n");
return (-4);
}
strcpy(idm, card_idm);
strcpy(pmm, card_pmm);

return 0;
}

__declspec(dllexport) int SetCallback(HWND hWindow)
{
char message_of_find_card[] = "CardFind";
char message_of_lose_card[] = "CardLose";

CALL_BACK_PARAMETERS call_back_parameters;
call_back_parameters.message_of_card_find = message_of_find_card;
call_back_parameters.message_of_card_loss = message_of_lose_card;
call_back_parameters.handle = (int)hWindow;
call_back_parameters.interval = 1;
call_back_parameters.retry_count = 1;
if(!set_call_back_parameters(&call_back_parameters)){
return FALSE;
} else {
return TRUE;
}
}


831:821
07/11/05 22:16:17
__declspec(dllexport) int StartPolling(void)
{
POLLING polling;
unsigned char system_code[2];
system_code[0] = 0xff;
system_code[1] = 0xff;
polling.system_code = system_code;
polling.time_slot = 0x0f;

if (!start_polling(&polling))
{
return FALSE;
}
return TRUE;
}

__declspec(dllexport) int StopPolling(void)
{
if (!stop_polling())
{
return FALSE;
}
return TRUE;
}

int LoadFelicaLibrary(void)
{
if ((hInstFelicaDLL=LoadLibrary("felica.dll"))==NULL)
{
return (-1);
}


832:821
07/11/05 22:21:49
initialize_library = (INITIALIZE_LIBRARY)GetProcAddress(
hInstFelicaDLL, "initialize_library");
dispose_library = (DISPOSE_LIBRARY)GetProcAddress(
hInstFelicaDLL, "dispose_library");
open_reader_writer_auto = (OPEN_READER_WRITER_AUTO)GetProcAddress(
hInstFelicaDLL,"open_reader_writer_auto");
polling_and_get_card_information = (POLLING_AND_GET_CARD_INFORMATION)GetProcAddress(
hInstFelicaDLL,"polling_and_get_card_information");
get_last_card_information = (GET_LAST_CARD_INFORMATION)GetProcAddress(
hInstFelicaDLL,"get_last_card_information");
set_call_back_parameters = (SET_CALL_BACK_PARAMETERS)GetProcAddress(
hInstFelicaDLL,"set_call_back_parameters");
start_polling = (START_POLLING)GetProcAddress(
hInstFelicaDLL,"start_polling");
stop_polling = (STOP_POLLING)GetProcAddress(
hInstFelicaDLL,"stop_polling");

if (!initialize_library())
{
printf("FeliCaライブラリを初期化できませんでした。\n");
return (-1);
}

if (!open_reader_writer_auto())
{
printf("リーダライタをオープンできませんでした。\n");
dispose_library();
return (-3);
}


833:821
07/11/05 23:01:00
return 0;
}

int FreeFelicaLibrary(void)
{
if (!dispose_library())
{
printf("FeliCaライブラリの開放に失敗しました。\n");
return (-1);
}

if (!FreeLibrary(hInstFelicaDLL))
{
return (-1);
}
return 0;
}

void print_binary(unsigned char* binary, int length)
{
int i;
for (i = 0; i <= length - 1; i++) {
printf("%02X ", binary[i]);
}
printf("\n");
}
-----------------felipas.c ここまで-------------------

834:デフォルトの名無しさん
07/11/05 23:10:25
>>824
ネ申キタ━━━(゜∀゜)━━━ !!!!!

835:デフォルトの名無しさん
07/11/05 23:11:37
>>824
落とせないじゃん。

836:デフォルトの名無しさん
07/11/05 23:31:29
>>835
あ、すまん、ファイルアップロードしたあと、公開手続きを忘れてた。
直しておいたのでダウンロードできるようになってます。


837:デフォルトの名無しさん
07/11/05 23:32:48
落とせたよ。
でも、VS2005 を持ってないんで、開けなかった Orz...

838:デフォルトの名無しさん
07/11/05 23:42:21
>>837
とりあえず、FelicaDump.exe は VS2005 がなくても使えますよ。

あと、VS2005 Express Edition ならフリーで入手可能 (Win32 SDK もフリーで入手可能)。

839:835
07/11/05 23:47:27
>>836
thx.
有効に使わせてもらう~

840:デフォルトの名無しさん
07/11/06 23:19:13
>>838
Platform SDKのダウソもいるぞ。

841:デフォルトの名無しさん
07/11/07 08:06:11
Windows SDKでしょ?

842:デフォルトの名無しさん
07/11/07 08:30:21
普通にlibpasori使えばいいと思うのだが
なぜこんな面倒な事をしてるんですか?

843:デフォルトの名無しさん
07/11/07 18:33:48
>>842
ユーザに libusb-win32 のインストールを強制させたくないから。

844:デフォルトの名無しさん
07/11/07 22:20:58
モバイルFeliCaのフリー領域を読み書きしたいときは、
PaSoRi+SDK LiteかPaSoRi+Mobile FeliCa Access Support Libraryでおk?

845:デフォルトの名無しさん
07/11/07 22:42:13
>>841
Platform SDKですが、何か?

URLリンク(www.microsoft.com)

Windows SDKはVista以降だな。


>>842
libpasoriの方が面倒だろうが、阿呆。

846:デフォルトの名無しさん
07/11/10 10:52:39
はぁ? libpasoriのが簡単だと思うが
こいつら相当Lv低いんだなw

847:デフォルトの名無しさん
07/11/10 15:07:55
>>846
「開発者にとって」は libpasori のほうが簡単かもしれん(俺はそうは思わんけど)。
が、今話題にしてるのは「一般の利用者」(作ったプログラムを利用するユーザ)の話では?

普通、libusb-win32 入れてね、って言われた時点で萎える。

848:デフォルトの名無しさん
07/11/11 03:23:14
>>846
libpasoriのどこが簡単なんだ?
わざわざlib-usbやlib-usb-devel、Winなら不安定なlibusb-win32やVistaでは使えないcygwinをインストールする必要があるのに?
馬鹿じゃん、お前wwwww

849: ◆Cj7WbxtHIU
07/11/11 06:36:47
libpasoriの中の人です。

平たく言えば、libpasoriの価値は「Windows以外でも使える」という点に集約されます。
要は、
・ Windowsアプリ → felicalibを使う
・ 他のOSやOSが無い場合 → libpasoriとか他の手法
って事です。

>>848
libusb-win32の名誉のために補足しておくと、
libusb-win32のデバイスドライバは十分に安定していると個人的には考えています。
幾つかの商用製品でもlibusb-win32は採用されています。

もっとも、フィルタドライバの方は素人にはお勧めできないのですが。。

850: ◆Cj7WbxtHIU
07/11/11 07:10:10
あと、libpasoriのAPIやコードは現時点から改善される可能性はほぼゼロで、
(いつになるかは不明ですが)次のリリースからは別物になります。
felicalibのAPIに追従する形で、旧APIも残していく努力はします。

ただ、普通のアプリケーション(カードの残額を表示するとか)を作る場合は
lpdumpを別途実行してダンプファイルを得る等してlibpasoriと直接関わらない
構造にすることをお勧めします。

何かカードをタッチした瞬間にアクションを起こすアプリケーションを作りたい
という(メールでの)質問が意外と多いんですが、そういうアプリケーションを作る
ための移植性の高い方法は殆ど無いので、ライブラリレベルでの対応を期待するより
自分でPaSoRiを制御した方が多分楽です。

個人的には、FeliCaを読み取るためのサーバdaemonを作り、D-BUSで通信してクライアントアプリに
渡すという方法で実装しています。( = つまり開発者本人が既に現在のlibpasoriを使ってません)
有力な実装が出てこなければこのサーバをlibpasoriに含めるのもアリかなと思っています。

# Windows上ならかざしてナビとの連携といった問題も出てくるでしょう。。
# ただ、幸いなことにFeliCaポートソフトウェアには調停機能があります。

851:824 ◆2dxqgtpgFw
07/11/11 11:10:24
>>849,850
felicalibの作者です。
libpasori は *nix 系で有り難く使わせていただいています。
オープンソースマガジンの記事も読みました。

すでに新しいことをされているようで、期待しています。
新しい API を作るのなら、felicalib の API をあわせることも可能です。
ソースレベルで互換にできるとうれしいので。

852:デフォルトの名無しさん
07/11/11 13:40:36
>>850
乙~。
それって、某Mac用ソフトへの皮肉っぽいねw

853:デフォルトの名無しさん
07/11/13 18:33:12
felicalibにSetCallbackはないのかい?

854:デフォルトの名無しさん
07/11/14 00:25:22
>>848
お前みたいな、へたれPG向きじゃないって事だろ。


855:デフォルトの名無しさん
07/11/14 01:24:20
今日fericaで自作ソフトを作成できることを知ったんですが、
携帯をかざしたとき、携帯側でリンクが表示されるようにすることは可能なのでしょうか?
QRコードでURLを読み取る代わりにfericaを使うイメージです。

856:デフォルトの名無しさん
07/11/14 01:49:49
>fericaで自作ソフトを作成できる
いや、無理だろ

>携帯側でリンクが表示されるようにすることは可能なのでしょうか?
受け渡し用のアプリが作れればあるいは

857:デフォルトの名無しさん
07/11/14 02:43:13
なんだかんだで結局自分で叩かないといけないわけか・・・・
今まであんま深い使い方はした事無いが やんなきゃいけなさそうなんだよな・・・
めんどくせぇ


858:デフォルトの名無しさん
07/11/14 03:30:02
盗るか

859:デフォルトの名無しさん
07/11/14 08:03:52
>>855

see 803

or

URLリンク(www.nttdocomo.co.jp)

860:デフォルトの名無しさん
07/11/14 21:43:34
>>854
反論できないと、そういう言いがかりしか出来ないの、低脳君(プッ

861:デフォルトの名無しさん
07/11/14 22:24:02
なにこのやる気のない流れ

862:デフォルトの名無しさん
07/11/16 15:01:39
Felica.dllの関数をVisualStudio 2005や、.Net 2003で、MFCアプリケーションで呼び出すと、
出力ウィンドウになんか例外でません?
std::runtime_error とかgerrorとか。
トレースに出るだけで、動いてるからいいんだけど、Releaseモードでも出るし、
catchしようにもMFCでstd::runtime_errorをcatchできないし、無視していいのかな

863:sage
07/11/17 13:53:42
felicalibだと簡単に使えるけど1台しか使えない
libusb-win32なら面倒だけど複数台使えるって事だろ?使い分ければいいじゃん


864:デフォルトの名無しさん
07/11/24 15:38:54
自分のカードのidmってどうやって調べるのですか?

865:デフォルトの名無しさん
07/11/24 20:06:06
>>864
ググレカス

866:デフォルトの名無しさん
07/11/25 04:48:23
pasori で、touch message のような簡易なデータの受け渡しをしようと思って買ったら、
かざポンとかで一応出来るけど、web 経由とか回りくどいのしかなさげね。。エンコードしてあるし。
可能なら作るかなぁ。

867:デフォルトの名無しさん
07/11/25 14:17:53
>>886
FeliCaに書き込めるか書き込めないかの違いもついてないやつは、さっさとググレカス。

868:デフォルトの名無しさん
07/11/25 15:16:01
>>866
iアプリとpasori間でなら、簡易なデータのやり取りは出来るな


869:デフォルトの名無しさん
07/12/03 18:29:29
SDK for FeliCa Liteを使用しています。
sample_09.cppというファイルを使ってコンパイルしてみたら以下のようなエラーが出ました
'felica.exe': 'C:\Documents and Settings\ユーザー1\My Documents\Visual Studio 2005\Projects\felica\Debug\felica.exe' を読み込みました。シンボルが読み込まれました。
'felica.exe': 'C:\WINDOWS\system32\ntdll.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\kernel32.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\SDK_for_FeliCa\FeliCa_Library\bin\rw.dll' を読み込みました。バイナリはデバッグ情報と一緒にビルドされませんでした。
'felica.exe': 'C:\WINDOWS\system32\advapi32.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\rpcrt4.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\secur32.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\SDK_for_FeliCa\FeliCa_Library\bin\felica.dll' を読み込みました。バイナリはデバッグ情報と一緒にビルドされませんでした。
'felica.exe': 'C:\WINDOWS\system32\user32.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\gdi32.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcr80d.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\msvcrt.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\imm32.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\lpk.dll' を読み込みました。シンボルが読み込まれていません。
'felica.exe': 'C:\WINDOWS\system32\usp10.dll' を読み込みました。シンボルが読み込まれていません。
プログラム '[2424] felica.exe: ネイティブ' はコード 1 (0x1) で終了しました。

870:デフォルトの名無しさん
07/12/03 18:30:22
>>869のようなエラーが出てきました。
そのあとに作成した*.exeファイルをcmdから実行したけどcan'tOpenReaderWriterって出てしまいます。
解決方法を教えていただけないでしょうか。
ぐぐっても出てきませんでしたorz

871:デフォルトの名無しさん
07/12/03 19:42:54
目が悪くなったかな。どこにもエラーが見当たらないんだが。

872:デフォルトの名無しさん
07/12/03 20:06:00
フェリカ関連でソニーが新会社作ったらしいね

873:デフォルトの名無しさん
07/12/03 21:36:02
移ってきたか…ここでも一問一答を繰り返す気かね

874:デフォルトの名無しさん
07/12/03 23:29:52
やべ、「いい加減Felicaスレに逝けよ」って書くところだったw

875:デフォルトの名無しさん
07/12/04 01:38:32
>>870
パソリをつなぐ

876:デフォルトの名無しさん
07/12/04 09:01:48
>>869
エラー一つも無いのですが…
これだけの情報では、PaSoRiつながってて、ドライバはちゃんとインストールされてますか?しか言えない。

877:869
07/12/04 13:40:19
>>869->>870です。
ずっと考えてみたのですが解決しませんでした。

パソリはつないでいます。
あれから、何も書き加えていないもとのソースファイルでも行ってみたのですが同じでした。
パソリは接続してあります。
>>876
FeliCa の捕捉と IDm の取得を行うsample_06というプログラムはしっかり動作したので
PaSoRiはしっかりつながっていると思います。
また、sanple_06が実行できたのでドライバもインストールしてあるとは思いますがどうなのでしょうか・・・。

878:デフォルトの名無しさん
07/12/04 19:00:16
>>877
読もうとしているFeliCaカードの仕様はご理解されていますか?
Liteということは、添付されているサンプルのFeliCaカードを読もうとしているのだと
思いますが、システムコードとサービスコード、ブロック数はそのカードの
仕様通りに指定されているでしょうか?

また、私はVBしか分からないのでCのソースは見ていませんが、VBのサンプルソースの
暗号なし書込みと読込みは、読込部分と書込み部分が一緒になっている変なソースで、
エラー処理もおかしかったのでかなり修正が必要でした。


879:デフォルトの名無しさん
07/12/05 08:20:32
>>870
ソースコードも載せないで解決方法を教えろってアホですか?

ここをみてる全員がsample_09.cppを持ってるわけじゃないんだが
てか、ワンステップずつデバック文突っ込んでどのAPIでエラー出てるのか
調べるのがPGの仕事だろうが、それで解決出来ない奴がPGなんて物を
やるんじゃねえよ。ぼけ

880:デフォルトの名無しさん
07/12/05 11:10:28
>>877はプログラムに向いていない気がする

881:デフォルトの名無しさん
07/12/05 11:19:12
そりゃまぁ、学生なんだし成績とか人間関係のほうを向いているだろうねぇ。
# もっとプログラムに向き合わなきゃw

882:デフォルトの名無しさん
07/12/05 14:58:36
Felicaカードの片面無地、安く売ってるしりませんか?
ある程度の数を買おうと思うんだが。(100枚ほど・・)

883:デフォルトの名無しさん
07/12/05 15:32:44
>>882
市販品ならampmのEDY
SDKのEnterprise所持者ならSonyからホワイトカード購入
SDKのLite・ProfessionalならUSCあたりに電話



884:デフォルトの名無しさん
07/12/05 15:52:49
>>883
ありがっと。

885:デフォルトの名無しさん
07/12/06 00:52:49
>>877

if (!open_reader_writer_auto()) {
  fprintf(stderr, "Can't open reader writer.\n");
  return EXIT_FAILURE;
}

ここでエラー?
PaSoRiが正常に接続されていて、open_reader_writer_auto でエラーに
なるんだったら、他にPaSoRiを使うソフトを開きっぱなしにしてるんじゃ
ないの。SFCard Viewerを起動しっぱなしとか、「かざしてナビ」が常駐
してるとか。


886:デフォルトの名無しさん
07/12/06 01:34:24
プログラムのコーディングもデバッグもしたことないのに、
いきなりろくに触ったことも無いであろう、Felicaのサンプルを動かそうというのがそもそもだな

887:デフォルトの名無しさん
07/12/06 01:47:12
まあ、厳しいことを言えば >>896 のメッセージを「エラー」と言ってしまうこと
からみてC言語の経験ゼロなのだろうし、このサンプル程度でエラーを解決できない
ところから見て、SDK for FeliCa 云々以前に「プログラミングの基礎」からやれ
ってとこですね。

888:デフォルトの名無しさん
07/12/06 18:56:59
このスレで解決した質問ってあるのか?
まあ質問も「リーダーがオープンできません!」とかしかないけど

889:デフォルトの名無しさん
07/12/07 08:38:08
無いw
そもそもSDKってNDAの類なんてものがあるから
あまり情報が出てこないんだろうな

890:デフォルトの名無しさん
07/12/07 15:36:36
Enpterprise触ってる猛者居ませんか?
1次発券時のFelicaスクリプトの書き方がイマイチ分かりません

システムキーの書き換えとか物凄く失敗してしまいそうだし、
サンプルぐらい欲シス・・・。

891:869
07/12/10 15:28:37
>>869です。レスが遅くなってしまいすみません。

>>878
学校で購入をしたのですが、先生が言うにはカードが添付されていなかったらしく今注文をしている段階です。
システムコードとかは恐らくカードの仕様通りにはなっているとは思います。
>>879
すみません。
ソースコードは
URLリンク(www.uploda.org)
です。
sample_09.cppというファイルの
//11/26/2007
//自分で情報を指定して書き込む場合
unsigned char write_block_data[17];
という部分から書き加えました。
>>880
正直プログラムには興味があって勉強はしてきたのですが向いていないし
卒業したらプログラムを組んだりすることはしないです・・・。
>>885
SFCard Viewerを削除しました。
PaSoRiのドライバはインストールしてありますが
付属のソフト(Edyを読み取ったりするソフト)はインストールしていません。
一度環境を構築しなおしてみたのですがダメでした。
もともと何も書き加えていないサンプルプログラムも正常に動かなくて・・・。

892:デフォルトの名無しさん
07/12/10 21:49:32
felica関係の開発をしたことのない通りすがりプログラマだけど
891ってまずくないのかね?

893:デフォルトの名無しさん
07/12/11 01:50:32
このsampleは他のHPでも公開してるっぽいから大丈夫かも

URLリンク(www5d.biglobe.ne.jp)
ここ参照してみたら?ただの情報だし

ちなみに何が問題でエラーになってるのかを調べるには
getlastErrorに相当する関数あるはずだから、エラーでたAPIの
すぐ下で呼べば詳しいエラーわかるはずなんだがなー
get_last_error_typeとかその辺



894:デフォルトの名無しさん
07/12/11 02:07:17
felica_basic.hとかのヘッダーファイルはSDKのものじゃないのかな?
公開されているんだっけ?

895:デフォルトの名無しさん
07/12/11 08:49:35
>>893
SDKのサンプルソースそのままだからマズイでしょー
学生さんだから、知らなかったから、は最近の日本では通用しないよ

896:デフォルトの名無しさん
07/12/11 10:25:11
>>893
マニュアルの一部または全部をソニー株式会社の書面による許可なく複写または複製することは, その形態を問わず禁じます

897:デフォルトの名無しさん
07/12/11 20:32:29
felica_basic.hなんて入ってたのか
あっぷろだにあるのは落してないから詳細は分からないが
sample_09.cppの名前だけで判断してた
これってSDKに入ってる奴と同じ物という認識でいたんだよね

で上でレスしたHPにここに入ってるソース丸ごとパクリで
紹介されるんだよなー sample_09.cppは無いけど他のはコメント以外100%一緒w
なので合法なのかと思ってたわ
つうことはこのHP自体も問題ありって事だな。

この辺良く確認しないで適当にレスして勘違いしてしまった方失礼しました。



898:デフォルトの名無しさん
07/12/18 08:57:54
いろいろやってるうちに、
 『ProgramFiles\ComonFiles\SonyShared\・・・』 
にあるDLLのバージョンが2.0.0.6になってて、
FeliCa_Tutorialで2.0.0.6のDLLを指定したときは普通に使えるのに、
LiteとかProのDLL(Ver.1.26)を指定するとリーダライタの自動認識ができない。

他のPCではVer1.26で普通に使えるのに・・・。

こんな状態になった人、解決方法をご存知の人、情報ください。

899:デフォルトの名無しさん
07/12/18 10:57:51
2世代目のPaSoRi(白いやつ)は、DLLやプラグインモジュールが古いと使えません。

900:デフォルトの名無しさん
07/12/18 11:11:03
>>899
>2世代目のPaSoRi(白いやつ)は、DLLやプラグインモジュールが古いと使えません。

マジですか?
一応両方持っているのですが、>>898 は古い物(RC-S310)でやってました。

ですが、たしかに白いPaSoRiをセットアップしてから一部のアプリでカードの読み込みや
書込みができなくなりました。

参照先のDLLやプラグインは変更してるのに、どこか違うとこを参照してるのかな?
???

901:デフォルトの名無しさん
07/12/18 21:10:36
>>900
常識だろ、そんなの。

902:デフォルトの名無しさん
07/12/18 23:31:30
>>900
なんで Ver 1.26 みたいなクソ古いDLL使ってるんだ。最新のVer 2.0.0.6 使えよ。
RC-S310/RC-S320どちらも使えるし。

まさか、折角最新のFeliCaポートソフトウェアをインストールしているのに、
古いDLLをC:\WINNT\system32にコピーしたり、PATH通したりしてないよな。
その上、set_plugins_home_directory 関数や環境変数 FELICA_PLUGINS で、
わざわざ古いPlugin指定してたりして。

903:デフォルトの名無しさん
07/12/19 09:00:27
>>902
SDKのProを入手したので、シリアルのリーダライタを接続してみたのですが
Ver2.0.0.6だとTutorialでリーダライタの認識ができませんでした。

で仕方なく古い1.26でやってみたり、いろいろ試しているうちに混乱してしまいまして。

SDKもリーダライタも3年前に会社で当時の担当者が使ってた残骸のような物なので
なんかDLLとかプラグインとか以前にシリアルのリーダライタが壊れてるような気が
してきました・・・。

904:デフォルトの名無しさん
07/12/20 00:25:57
ダウンロードできるFeliCaポートソフトウエアは、あくまでPaSoRi用で、シリアル接続用に
必要な serial.gp がインストールされないから、認識されなくて当然。
鍵が必要な領域をアクセスするために必要な security.gp もついてない。
これらの最新版がほしけりゃ SDK for FeliCa Professional Ver.2.0 を買え。

というか、マニュアルを100回ぐらい読み直せ。

905:デフォルトの名無しさん
07/12/25 22:13:22
SuicaやPASMOの裏面の左上や右下に書いてあるIDっぽいやつって、
felicalib使って取れないんだろうか?

906:デフォルトの名無しさん
07/12/26 22:39:41
>>905
取れないよ。
だって、FeliCaの内部にデータないもの。

nanacoとWAON、Edyはあるけど。

907:デフォルトの名無しさん
07/12/26 23:44:50
>>905
裏面右下のJEやPBなどで始まる番号は、暗号化された領域に書かれているので
暗号鍵がわかれば読み出せる(felicalibじゃ無理)。
左上などに刻印されている番号は、FeliCaチップの製造番号(IDm)でもなくて、
カード組み立てとしてのトッパンフォームズや大日本印刷などの製造番号なの
でチップ内には書かれていない。

908:デフォルトの名無しさん
07/12/27 17:54:11
>>906 >>907
ほー なるほど
SDK for Felicaじゃないとむりか・・・
THX!!

909:デフォルトの名無しさん
07/12/27 20:51:47
>>908
SDKでも無理だってば。

暗号鍵がわかれば、とかあるけど、簡単に分かるもんじゃないし。
なにより、本当に暗号化領域に有るかどうかは誰も知らないw

910:デフォルトの名無しさん
07/12/28 01:01:54
SDKがあれば暗号化領域に触れるってもんでもないのか。
それぞれ鍵ごとに暗号化領域が分かれてて、
その鍵に対応した暗号化領域しかさわれない
って感じなのかな。

911:デフォルトの名無しさん
07/12/28 08:25:21
>>898

環境変数PATHで先に見つかった,felica.dllをまず読み込んでしまうので,
set_reader_writer_control_library で指定したrw.dllやset_plugins_home_directoryで指定しているプラグインの
バージョンと,読み込んだfelica.dllのバージョンがずれていると動かなくなるようです.

たとえば,以下のいずれかで解決するのでは?!

①環境変数PATHでLiteとかProのDLLのPATHを前の方に入れる
②ProgramFiles\ComonFiles\SonyShared\・・・のDLLのバージョンをなんとかして戻す.
古いドライバがもし,見つからなければ,LiteやPROのDLL(felica.dll, rw.dll, プラグイン)を
ProgramFiles\ComonFiles\SonyShared\・・・にコピーしちゃうとか
③LiteやPROを最新版にバージョンアップしてもらう(保守契約がないと有償だね)
既に開発してあるプログラムはコンパイルしなおすことになりますが...


912:デフォルトの名無しさん
07/12/28 20:04:23
>>869です。
無事解決しました。
原因はライブラリやインクルードを全てリンクしていないからでした。
皆様ありがとうございました。

913:デフォルトの名無しさん
07/12/28 23:25:22
>>910
>SDKがあれば暗号化領域に触れるってもんでもないのか
そんなことが出来たら困るだろうが。
他の事業者の領域が触れるのは問題だ。
少しは調べてから発言しろや。

914:869
08/01/07 15:11:36
すみません。>>869です。
デバッグはできたのですが、コマンドプロンプトから実行コマンドを入力すると

Can't find FeliCa.
felica_error_type: 1036
rw_error_type: 157

というメッセージが出てきてしまいます。
カードなしの状態で実行しても同じメッセージが出てきます。
ポーリングコマンドがうまくいっていないからリーダーがおかしいのかと思い
カード情報の読み込み専用のプログラムを実行したところしっかりcard idmを読み込み
カードをセットせずに実行したら

Can't find FeliCa.

というメッセージが出ただけでした。
また、自分でプログラムを書き加えていない元のサンプルプログラムを動かしても同じエラーメッセージが出てきました。

felica_error_type: 1036
rw_error_type: 157
というものをぐぐってみたのですが検索結果が0だったのでここで質問させていただきました。

915:デフォルトの名無しさん
08/01/07 15:14:58
ググる前にSDKの説明は読んだの?

916:869
08/01/07 15:36:20
>>915
はい、付属の説明書は読みました。

917:869
08/01/07 18:17:41
何がダメだったのかよくわからないのですが読み込みができるファイルに書き込み機能をコピペして追加したら一応読み書き可能になりました。

918:デフォルトの名無しさん
08/01/07 23:35:57
>>914
felica_error.h と rw_error.h が何のためにあると思ってる ?

それとさぁ、sample_09 を実行させる時に、Suica とか Edy とかのせて実行させたり
してないよな ?

だいたいさぁ、「カード情報の読み込み専用のプログラム」とか「ファイルに書き込み
機能をコピペして」とか言われても、何のことかさっぱりわからんぞ。
本当に大学生かぁ?

正直、もう止めとけ。

919:デフォルトの名無しさん
08/01/08 01:31:19
「書き込み機能」とやらに初期化が入ってたんじゃない?

920:デフォルトの名無しさん
08/01/09 03:08:21
felica側のコードって書き換えることできるんだろうか

921:デフォルトの名無しさん
08/01/10 02:17:22
チュートリアルですらpolling成功しねぇ。ドライバ入れなおすか

922:デフォルトの名無しさん
08/01/10 04:44:46
あーなんでなんも考えずにSDK入れてドライバ入れた後、pasoriに付いてたドライバもインストールしちゃったんだろ
他のアプリでpasori使ってます、なんてエラーがでてJRの移動記録すら見れねぇ。

923:デフォルトの名無しさん
08/01/10 21:48:32
>>920
はぁ?
なに言ってるんだお前。
馬鹿?

924:デフォルトの名無しさん
08/01/11 15:22:29
質問者は馬鹿だし回答者は「説明書よめ」
このスレ全然機能してませんNE

925:デフォルトの名無しさん
08/01/12 00:24:44
FeliCaカードって一度書き込んだらDVD-Rのように削除不可能?

>>924
仕方ないんじゃないの?
高価なソフトだしそもそも個人向けに販売されていないしね。

926:デフォルトの名無しさん
08/01/12 00:27:25
>>922
削除しちゃえばいいんじゃないの?

927:デフォルトの名無しさん
08/01/12 03:40:16
>>925
んなこたーない。


システムコードとかは仰せの通りだが通常の書き方と
異なるやりかた(公開されてないとおもう?)ので関係ないだろう。

928:デフォルトの名無しさん
08/01/12 20:32:32
>>926
削除したけどそれでも使えないんで、OS再インスコしました

929:デフォルトの名無しさん
08/01/16 20:27:26
>>913
にぼしでも食え

930:デフォルトの名無しさん
08/01/19 00:06:34
>>929
今更なにをほざいてるんだ?
そんなに自分の非が認められないのか?
アホが。

931:デフォルトの名無しさん
08/01/19 03:12:40
     _
  _/;@/
  /",:;ン   にぼし
__/,/
`V

932:デフォルトの名無しさん
08/01/19 09:32:14
           |`ゝ
 ドッキング    _//´
       / :;/'
     _/@,;)ゞ
  _/;@/ ̄
  /",:;ン   にぼし
__/,/
`V

933:デフォルトの名無しさん
08/01/19 15:50:04
にぼしAAって元からあったのか?
あったとしたらどこで需要があったんだ?
まさかこのスレのためだけにわざわざ作ったのか?

934:デフォルトの名無しさん
08/01/20 01:31:13
ドッキングにぼしでおぐぐりなさいませ

935:デフォルトの名無しさん
08/01/20 09:53:50
ドッキングにぼしについて調べれば調べるほど謎が深まる罠

936:デフォルトの名無しさん
08/01/26 18:56:56
過疎ってるなー。

937:デフォルトの名無しさん
08/01/26 23:57:40
先週くらいにSDK for FeliCaのエンタープライズが某中華系サイトで見つけた。

938:デフォルトの名無しさん
08/01/27 09:39:33
「エンタープライズ」が、何を「見つけた」の?

939:デフォルトの名無しさん
08/01/27 10:01:51
某中華系サイト。エンタープライズがね。

940:デフォルトの名無しさん
08/01/27 10:32:17
どうでもいい

941:デフォルトの名無しさん
08/01/27 11:02:58
>>939
それなら、「エンタープライズが某中華系サイト*を*見つけた」のですね?

942:デフォルトの名無しさん
08/01/27 11:25:54
粘着テープ

943:デフォルトの名無しさん
08/01/28 09:44:12
エンタープライズ発進!

944:デフォルトの名無しさん
08/01/28 15:19:14
SDKなんぞ出回っても意味無いだろw

945:デフォルトの名無しさん
08/01/31 08:17:26
>>914
君さーまじでプログラマー向いてないよ。

もうこっちの世界は止めて大人しく文系にしたほうがいいよ

946:デフォルトの名無しさん
08/01/31 11:23:51
文系w

947:デフォルトの名無しさん
08/02/02 18:19:51
プログラマは文系です。

948:デフォルトの名無しさん
08/02/03 08:55:44
プログラマは土方です

949:デフォルトの名無しさん
08/02/05 13:07:25
プログラマなんて二度とやりたくないわ。
これは向き不向きがはっきりしてるな。

950:デフォルトの名無しさん
08/02/08 10:56:46
職業上飯を作る(プログラマ)のと、飯を食うだけ(ただのユーザ)では
世間の待遇が違うだろう。

951:デフォルトの名無しさん
08/02/08 20:12:43
資本主義的には消費者が一番偉いからな!

952:デフォルトの名無しさん
08/02/09 15:37:09
連続ポーリングってこれできる?

953:デフォルトの名無しさん
08/02/11 13:54:02
できる

954:デフォルトの名無しさん
08/02/20 18:32:15
FeliCaやUSBメモリでWindowsのログオンを自動化「PeopleLogOnFeliCa対応版」
URLリンク(www.forest.impress.co.jp)

955:デフォルトの名無しさん
08/03/02 03:54:41
>>954
これってAD環境とか対応しないかね。
俺作ってもいいんだけど、需要ある?

956:デフォルトの名無しさん
08/03/02 11:09:11
ADってほとんど学校、企業系だから必要なやつらは自前で購入してるんじゃない?
そこそこ需要はあるかな

ロボフォーム+簡単登録2みたいなソフトが欲しいと独り言を言ってみる

957:デフォルトの名無しさん
08/03/03 08:04:05
>>955
ユーザー名にユーザー@ドメインで使ってるが?

これユーザー名とパスが自動入力されるだけなのな。Enterも入力して欲しい。
有料版はそこまでやってくれるのかな?

958:デフォルトの名無しさん
08/03/03 08:52:28
>>957
ユーザの妥当性をAD対応ならダイアログか何か出てチェック出来てるかって話。
そんなの知ってるから別にいいやって話はあるが、パスワードはタスクマネージャ
でもチェックはするし。

959:デフォルトの名無しさん
08/03/20 18:16:51
Suica/Edy/nanaco/WAON などの履歴部分の解析結果。
URLリンク(sourceforge.jp)


960:デフォルトの名無しさん
08/04/07 03:21:21
秋葉原のじゃんぱらでRC-S320が売っていたんだが、
2480円だから普通のリーダでもいいかなどと考えてしまう。

おもしろそうなんだが。

961:デフォルトの名無しさん
08/04/07 08:05:24
普通のリーダとは?
13.56MHzの工業用RFIDリーダでは、FeliCaは読めないと思うが。

つうか、工業用リーダの最安値の奴でも、5万円はするぞ。

962:デフォルトの名無しさん
08/04/07 14:10:43
RC-S320はそこらのコンビニでも3000円ちょいで買えるしな

963:デフォルトの名無しさん
08/04/07 14:36:03
こんなのもある。値段はわからんが・・・。

デンソー製  TypeA、TypeB、FeliCaのすべてに対応
URLリンク(www.denso-wave.co.jp)

964:デフォルトの名無しさん
08/04/07 15:03:45
PR-450UDMで検索したら、ここが\39,795だな
URLリンク(www.sofmart.com)

965:デフォルトの名無しさん
08/04/22 13:37:17
SDKのRead Blockの項に、『最大8ブロックを同時に読むことができます』ってなってるけど、
50ブロック以上でも同時に読めるね。

読取時間も8ブロックごとに分割して読んだときより、一括で読んだ方が若干早かった。。

・・・って今頃やってる人はいないのかな?


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch