2

uint8_tのArrayBuffersとしてバイナリ イメージを受け取る Firefox 拡張機能に取り組んでいます。

私の拡張機能では、受信した画像で使用する必要がある関数を含む .dll ファイルを読み込みます。この関数はctype.uint8_t.ptrパラメータを取り、 ctype.uint8_t.ptr値を返します。

関数に渡すことができるように、 ArrayBufferをこの特定の ctypeに変換する方法が見つからないようです。これを行う正しい方法はありますか?

ImplicitConvert() を使用すると、Error: argument must be a nonnegative integer が返されます。

4

1 に答える 1

2

あなたはちょうどできるはずです:

var a = new Uint8Array(1<<10);
var ptr = new ctypes.uint8_t.ptr(a.buffer);

文書化されていないようですが、これを示すいくつかのテストがあります。

于 2013-10-15T16:38:27.900 に答える