Hey There,
I played around with a wrapper quite some time ago, but didn't have much luck either. I was chomping at the bit to make a working wrapper for it but hit a snag then got distracted. Unfortunately I got hung up on the first stage of any laser app, the "init" of the dac(s). I will attach the test program I started to mess with, if you would like to compare notes. If you can get it to fly, that would be great. I sold my Riya DAC, and now just have a couple of old easylase to fiddle with. I haven't been laser coding too much in the last few years, but I do kinda miss the torture Good luck, I'm rootin' for ya.
-Mike
edit: I looked more closely in that project and I didn't implement the SendFrame yet-
One thing that I typically did in the past when making wrappers like this was to look at existing wrappers that I knew worked.
Here is a snippet of the DLLIMPORT lines from the easylase wrapper- they should still have this sample code available for download somewhere on the jmlaser website.
[DllImport(@"easylase.dll", CallingConvention = CallingConvention.StdCall)]
private static extern bool EasyLaseClose();
[DllImport(@"easylase.dll", CallingConvention = CallingConvention.StdCall)]
private static extern int EasyLaseGetCardNum();
[DllImport("easylase.dll")]
private static extern int EasyLaseGetStatus(ref int cardNumber);
[DllImport(@"easylase.dll", CallingConvention = CallingConvention.StdCall)]
private static extern bool EasyLaseStop(ref int cardNumber);
[DllImport(@"easylase.dll", CallingConvention = CallingConvention.StdCall)]
private static extern bool EasyLaseWriteFrame(ref int cardNumber, EasyLasePoint[] datapointer, int bytecount, ushort speed);
[DllImport("easylase.dll")]
private static extern int EasyLaseDMXOut(ref int cardNumber,byte[] dmxdata,ushort basechannel,ushort numchannels );
-Mike