All pastes #168132 Raw Edit

Untitled

public text v1 · immutable
·published 2006-09-12 18:47 UTC
rendered paste body
using System;
using System.Runtime.InteropServices;

struct datum {
	IntPtr dptr;
	int dsize;
}

public class DatabaseTest {

    [DllImport ("libgdbm.so.2")]
    private static extern IntPtr gdbm_open (string path, int blockSize, int flags, int mode, IntPtr cb);
    
    [DllImport ("libgdbm.so.2")]
    private static extern void gdbm_close (IntPtr db);
    
    [DllImport ("libgdbm.so.2")]
    private static extern datum gdbm_firstkey (IntPtr db);
    
    [DllImport ("libgdbm.so.2")]
    private static extern datum gdbm_nextkey (IntPtr db, IntPtr datum);
    
    public static void Main () {
	IntPtr db = gdbm_open ("songs.db", 4096, 0 /* GDBM_READER */, 0, IntPtr.Zero);
			Console.WriteLine ("db={0}", db);
        if (db != IntPtr.Zero) {
            gdbm_firstkey (db);
        }
    }
}