ScsiPassThrough

C# Definition:

[StructLayout(LayoutKind.Sequential)]
    public class ScsiPassThrough {
        /// <summary>The size of the item passed to DeviceIoControl</summary>
        public ushort Length;

        /// <summary>The status of the SCSI command</summary>
        public byte ScsiStatus;

        /// <summary>The SCSI bus</summary>
        public byte PathId;

        /// <summary>The SCSI target</summary>
        public byte TargetId;

        /// <summary>The SCSI lun</summary>
        public byte Lun;

        /// <summary>The number of bytes in the CDB field</summary>
        public byte CdbLength;

        /// <summary>How long the sense info structure is</summary>
        public byte SenseInfoLength;

        /// <summary>Usually set to SCSI_IOCTL_DATA_IN</summary>
        public byte DataIn;

        /// <summary>How many bytes to transfer</summary>
        public UInt32 DataTransferLength;

        /// <summary>How long to wait before timing out</summary>
        public UInt32 TimeOutValue;

        /// <summary>The offset of the data buffer area returned</summary>
        public IntPtr DataBufferOffset; // UInt32 does not work on 64-bit

        /// <summary>The offset of the sense info returned</summary>
        public UInt32 SenseInfoOffset;

        /// <summary>The command code to send to the robot</summary>
        [MarshalAs(UnmanagedType.ByValArray, SizeConst=16)]
        public byte[] Cdb;

VB Definition:

Notes:

Última actualización