ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Visual Basic User's Clubコミュの非接触ICタグの利用について。

  • mixiチェック
  • このエントリーをはてなブックマークに追加
はじめまして。今現在タイトルに書いたテーマで開発を行っているものです。わからないことがあるのでお聞きしたく参上しました。

 とりあえず今は実験として、ICタグに格納されたデータを読み取って表示するだけのものを開発しています。一応動くのですが、開発PCからノートに移動したり、exeファイルにしたりすると、コードや構成は変わっていないはずなのにちゃんと動作せず、エラーが帰ってきます。関数が使えないのではなく、使えてはいるのだけどちゃんと動作していない印象でした。
 ICリーダに付属していたサンプルプログラム(ソース非公開)はどちらでも動くので、私のコーディングがおかしいのだと思います。助けていただければ幸いです。

環境:
 ICリーダライタ FEC Inc.製 URWI-201
開発PC 自作(Celeron1.8GHz メモリ512)
開発OS WinXP Professional Version2002 ServicePack2)
開発ツール Microsoft Visual Basic 6.0

 使用しているICリーダライタは専用のbasファイル(これはプロジェクトに追加しました)とdllを付属していて、その中から関数を読んで動作するようになっているみたいです。dllはただ同じフォルダに置いておくだけではいけないのでしょうか?
 何か宣言のようなものが必要だったりしそうなら、教えていただきたいです。
 というわけで、主にdllの扱いについてご教授願います。他に原因っぽいことを思いつきましたら、小さなことでも書き込んでいただけると助かります。
 初心者ですので、書き込みそのものに足りない部分があるかもしれません。もしそういうことがありましたら言って頂ければお調べしますので、書き込みをよろしくお願いします。どうか助けてください。

コメント(4)

regsvr32コマンドを使ってdllをレジストリに登録する必要があると思います。
コードと言うより環境の問題だと思いますので、確認して見てください。
DLLにも種類がありまして、普通のDLLなのかActiveX(COM) DLLなのかで使い方や宣言が違います。
関数を・・・と書いているところから察するに普通のDLLだと思うので、そう仮定します。
DeclareでDLLの呼び出しを宣言します。
これは多分、専用のbasファイルに既に宣言されているのではないかと思います。

あとは、DLLがちゃんと呼び出しされているかどうかですが、
関数呼び出し部分にブレークポイントを置いて前後の引数と戻り値が予想外の結果になっていないかを調べます。

DLLのロードの優先順位は
1.カレントディレクトリ
2.システム(c:\windows\system32など)
3.ウィンドウズ(c:\windowsなど)
4.環境変数PATH
だったかと思います。

DLLの配置位置が気になるならシステムのフォルダにいれてもかまわないです。
返事が遅れました。初心者ゆえ言われた手法がなんのことかわからず調べながらになったので出遅れた次第です。

>>1さん
 お返事ありがとうございます。
regsve32コマンドは実行してみたところ、「URWI2USB.dllは読み込まれましたが、DllRegisterServerエントリポイントが見つかりませんでした。このファイルが登録されていない可能性があります。」とのお返事が返ってまいりました。
 エラーっぽい感じですが、どうしたらよいでしょうか?

>>2さん
 basファイル内でDeclareされていたので「普通のDLL」だと思います。宣言はなされている以上動かないのはおかしいような・・・T_T

 ブレークポイントをおいて調べてみました。
その結果。引数はあっているのに戻り値が正しくない。状態でした。DLLがちゃんと呼び出されていないのでしょうか?
 調べてみたものの結果をどう判断したらいいのかわかりません。
DLLは現在ロードするプロジェクトと同じフォルダにおいてあります。
解決しました。
開発PCだけが動いていたみたいで、実は引数も間違っていたようです。何故あの環境でだけ動いたかはわかりませんが。。。
仕様書通りに引数を与えていたのに動かない関数は見捨てて、違う命令でも組み合わせていけば同じ動作をするようなことがわかったのでそちらに逃げました。

ご協力ありがとうございました。
。。。また何かありましたら書き込ませていただきます

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Visual Basic User's Club 更新情報

Visual Basic User's Clubのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング