Microsoft DirectX 8.0 (Visual Basic) |
DirectInputDevice8.SendDeviceData など、いくつかの DirectX メソッドでは、型が指定された配列をパラメータとして取る。たとえば、次のコード例で、formatArray は DIDEVICEOBJECTDATA 型の配列である。lCount は配列の要素数を示す。lFlags はデータの送信方法を制御するフラグ パラメータである。
MyDevice.SendDeviceData(lCount, formatArray(), lFlags)
いくつかの DirectX8 メソッドは、Any 型のパラメータを使用してデータを返す。たとえば、DirectSoundCaptureBuffer8.ReadBuffer メソッドの buffer パラメータである。一般には、そのようなメソッドからデータがバイト配列として返されると都合がよい。しかし、Microsoft® Visual Basic® の配列では実データの前に別の情報が含まれているので、単に配列の名前をメソッドに渡すことはできない。配列名の代わりに、配列の最初の要素を渡す必要がある。たとえば、次のコード例で、dsCaptureBuffer は DirectSoundCaptureBuffer8 オブジェクト、nBytes は読み取るバイト数が格納される長整数型 (Long) の値、buffer は 0 ベースのバイト配列である。
ReDim buffer(nBytes) Call dsCaptureBuffer.ReadBuffer(0, nBytes, buffer(0), 0)