using
System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using System.Reflection;
using System.Reflection.Emit;
namespace AppDllTest
{
/// <summary>
/// 非托管动态调用基类,基类不能直接使用,需要实现 FunTable()的虚函数
/// </summary>
public abstract class clDllBasePoxy
{
//-装入DLL---------
public bool Open(string dllFileName)
{
Hand = LoadLibrary(dllFileName);
if (Hand == 0)
{
return false;
}
FunSet(GetFunTable());
return true;
}
//-关闭DLL---
public bool Close()
{
return FreeLibrary(Hand)!=0;
}
public abstract string[] GetFunTable(); //函数对应表由外部代理类通过 GetFunTable来设置
//调用Windows32下的Kernele32库中的装入函数来完成对非托管DLL的引用-------
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using System.Reflection;
using System.Reflection.Emit;
namespace AppDllTest
{
/// <summary>
/// 非托管动态调用基类,基类不能直接使用,需要实现 FunTable()的虚函数
/// </summary>
public abstract class clDllBasePoxy
{
//-装入DLL---------
public bool Open(string dllFileName)
{
Hand = LoadLibrary(dllFileName);
if (Hand == 0)
{
return false;
}
FunSet(GetFunTable());
return true;
}
//-关闭DLL---
public bool Close()
{
return FreeLibrary(Hand)!=0;
}
public abstract string[] GetFunTable(); //函数对应表由外部代理类通过 GetFunTable来设置
//调用Windows32下的Kernele32库中的装入函数来完成对非托管DLL的引用-------