Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Text;
- using System.Runtime.InteropServices;
- using RGiesecke.DllExport;
- class MyExtension
- {
- [DllExport("RVExtensionVersion", CallingConvention = CallingConvention.Winapi)]
- public static void RvExtensionVersion(StringBuilder output, int outputSize)
- {
- output.Append("Test-Extension v1.0");
- }
- [DllExport("RVExtension", CallingConvention = CallingConvention.Winapi)]
- public static void RvExtension(StringBuilder output, int outputSize,
- [MarshalAs(UnmanagedType.LPStr)] string function)
- {
- output.Append(function);
- }
- [DllExport("RVExtensionArgs", CallingConvention = CallingConvention.Winapi)]
- public static int RvExtensionArgs(StringBuilder output, int outputSize,
- [MarshalAs(UnmanagedType.LPStr)] string function,
- [MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.LPStr, SizeParamIndex = 4)] string[] args, int argCount)
- {
- foreach (var arg in args)
- {
- output.Append(arg);
- }
- return 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement