Is LimeLM .net library compatible with Mono or does it depend on native Windows specific functions?
If you want to use TurboActivate.cs (the C# wrapper for TurboActivate) on platforms other than Windows then you'll need to modify it to call the correct function based on the platform. We have some customers doing this.
Is it better to pinvoke the Objective-C library from mono?
Well, that's what you'll have to modify in TurboActivate.cs. You'll have to add pinvoke calls for libTurboActivate.dylib on Mac OS X.
Also, is hardware locking available on Mac OS ?
Yes. Currently TurboActivate works on Windows, Mac, and Linux. We're adding more soon.