public static int sqlite3_blob_open(Sqlite3Handle pDb, string db, string table, string column, long iRow, int flags, out Sqlite3BlobHandle ppBlob) { var zDb = MarshalEx.StringToHGlobalUTF8(db); var zTable = MarshalEx.StringToHGlobalUTF8(table); var zColumn = MarshalEx.StringToHGlobalUTF8(column); try { return(Sqlite3.blob_open(pDb, zDb, zTable, zColumn, iRow, flags, out ppBlob)); } finally { if (zDb != IntPtr.Zero) { Marshal.FreeHGlobal(zDb); } if (zTable != IntPtr.Zero) { Marshal.FreeHGlobal(zTable); } if (zColumn != IntPtr.Zero) { Marshal.FreeHGlobal(zColumn); } } }
public int blob_open(Sqlite3Handle ppDb, IntPtr zDb, IntPtr zTable, IntPtr zColumn, long iRow, int flags, out Sqlite3BlobHandle ppBlob) => sqlite3_blob_open(ppDb, zDb, zTable, zColumn, iRow, flags, out ppBlob);
private static extern int sqlite3_blob_open(Sqlite3Handle pDb, IntPtr zDb, IntPtr zTable, IntPtr zColumn, long iRow, int flags, out Sqlite3BlobHandle ppBlob);
public int blob_bytes(Sqlite3BlobHandle pBlob) => sqlite3_blob_bytes(pBlob);
private static extern int sqlite3_blob_bytes(Sqlite3BlobHandle pBlob);
public static int sqlite3_blob_write(Sqlite3BlobHandle pBlob, IntPtr source, int length, int offset) => Sqlite3.blob_write(pBlob, source, length, offset);
public static int sqlite3_blob_read(Sqlite3BlobHandle pBlob, IntPtr destination, int length, int offset) => Sqlite3.blob_read(pBlob, destination, length, offset);
public int blob_write(Sqlite3BlobHandle pBlob, IntPtr source, int length, int offset) => sqlite3_blob_read(pBlob, source, length, offset);
private static extern int sqlite3_blob_write(Sqlite3BlobHandle pBlob, IntPtr source, int length, int offset);
private static extern int sqlite3_blob_read(Sqlite3BlobHandle pBlob, IntPtr destination, int length, int offset);
public static int sqlite3_blob_bytes(Sqlite3BlobHandle pBlob) => Sqlite3.blob_bytes(pBlob);