Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- C#: combine DllImport with inheritance?
- public abstract class abstractClassA
- {
- public abstract int abstractMethodA(int parameter);
- }
- public class usualClass : abstractClassA
- {
- [DllImort("ExternalLib.dll")]
- public static extern abstractMethodA(int parameter);
- }
- abstractClassA instance = new usualClass();
- public class usualClass : abstractClassA
- {
- public extern override abstractMethodA(int parameter);
- }
- abstractClassA instance = new usualClass();
- public abstract class AbstractClassA
- {
- public abstract int AbstractMethodA(int parameter);
- }
- public class UsualClass : AbstractClassA
- {
- [DllImport("ExternalLib.dll", EntryPoint = "abstractMethodA")]
- static extern int AbstractMethodAImport(int parameter);
- public override int AbstractMethodA(int parameter)
- {
- return AbstractMethodAImport(parameter);
- }
- }
- public abstract class AbstractClassA
- {
- public abstract int AbstractMethodA(int parameter);
- }
- public class UsualClass : AbstractClassA
- {
- public override int AbstractMethodA(int parameter)
- {
- return NativeMethods.AbstractMethodA(parameter);
- }
- }
- [SuppressUnmanagedCodeSecurity]
- internal class NativeMethods
- {
- [DllImport("ExternalLib.dll", EntryPoint = "abstractMethodA")]
- public static extern int AbstractMethodA(int parameter);
- }
- public abstract class abstractClassA
- {
- public abstract int abstractMethodA(int parameter);
- }
- public class usualClass : abstractClassA
- {
- [DllImort("ExternalLib.dll", EntryPoint="TheFunctionName")]
- private static extern abstractMethodAextern(int parameter);
- public override int abstractMethodA(int parameter)
- {
- return abstractMethodAextern(parameter);
- }
- }
Add Comment
Please, Sign In to add comment