1

JC2.2.1 アプレットを開発しています。私は本当に奇妙な問題に直面しています。Win7 と Linux の両方でシステムをセットアップしています。奇妙なことに、Linux で CAP ファイルを変換してアップロードすると、問題なく動作します。ただし、同じクラス ファイルに対して Windows コンバーターを使用すると、認証が成功した後、最初のブロックを読み込むときに GPSHELL が 6985 を報告します。

コマンドのラップされていないバージョンを使用して両方の CAP ファイルのバイトコードを分析すると、わずかな違いがあることに気付きました (以下を参照)。

JC2.2.1 コンバーターが異なるバイトコードを作成するのはなぜですか? 何か案が?私はそのような問題を理解しようとして多くの時間を無駄にしました。

私のWindows OSはWin7 64ビットで、Java 1.6 32ビットと64ビットの両方を実行しています(両方でテストしました)

パッケージ AID: 01 02 03 04 05 06 アプレット AID: 01 02 03 04 05 06 00

異なるバイトを強調表示しました **

First load command (not working) 80E80000EFC48211CF010010DECAFFED01020400010601020304050602001F0010001F000B0028010600120BD30020016D000002D700140002001004010004002804020107A0000000620101020107A0000000620102020107A0000000620201* 05 *0106A0000001510003000B01070102030405060000010600120080030600020404000000BCFFFF00B800BF070BD30005308F00073D181D1E8C00063B7A0640188C00221F10096D0A1167001F418D00231E04191E254141311E04191E25414131191E2510116A11191E25600C116700191E25418D00231060058D00277F00281808900C87001810F2900B870105110080038D00

First load command (working) 80E80000EFC48211CF010010DECAFFED01020400010601020304050602001F0010001F000B0028010600120BD30020016D000002D700140002001004010004002804020107A0000000620101020107A0000000620102020107A0000000620201* 00 *0106A0000001510003000B01070102030405060000010600120080030600020404000000BCFFFF00B800BF070BD30005308F00073D181D1E8C00063B7A0640188C00221F10096D0A1167001F418D00231E04191E254141311E04191E25414131191E2510116A11191E25600C116700191E25418D00231060058D00277F00281808900C87001810F2900B870105110080038D00

4

1 に答える 1

0

問題は、GlobalPlatformに誤ったエクスポートファイルを使用していたことでした。GP2.2.1 v1.5を使用していましたが、カードはGP2.1.1です。ダウンロードページを読み間違えました。

于 2012-11-26T10:16:44.060 に答える