- 博客(0)
- 资源 (2)
- 收藏
- 关注
从指定文件byte[]内存数组加载非托管DLL API
C#可以很轻松从内存或资源加载托管DLL..但C++ kernel32.dll LoadLibrary只能加载指定路径非托管DLL..有了kernel.dll现在好了.可以像C#一样轻松从内存或资源里加载非托管DLL..
从指定文件byte[]内存数组加载非托管DLL API
此DLL接口
FARPROC MemLoadLibrary(void* lpFileData, int nDataLength);
FARPROC MemGetProcAddress(FARPROC handle,LPCSTR lpProcName);
BOOL MemFreeLibrary(FARPROC handle);
模仿了kernel32.dll 的LoadLibrary操作方式..以下是C#调用示例
C#示例
#region " DllImport "
[DllImport("kernel.dll", EntryPoint = "MemLoadLibrary")]
public extern static IntPtr LoadLibrary(ref byte buf, int nLen);
[DllImport("kernel.dll", EntryPoint = "MemGetProcAddress")]
public extern static IntPtr GetProcAddress(IntPtr handle, String funcName);
[DllImport("kernel.dll", EntryPoint = "MemFreeLibrary")]
public extern static bool FreeLibrary(IntPtr handle);
#endregion
2011-12-06
表实体类与存储过程参数类生成器
可生成实体类与存储过程参数类,
其中,表可从数据库中读取和指定文件夹*.tab读取,读*.tab仅支持一个建表T-SQL语句,通过表的列名长度类型可生成对应表的实体类.
存储过程一样可从数据库中读取和指定文件夹*.PRC读取读*.prc仅支持一个建存储过程的T-SQL语句.存储过程可生成存储过程参数类与存储过程的实体类
2008-01-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人