用vc6.0创健dll时发现了一个bug
选择win32dynamic-link libary
然后选择 A dll that exports some symbols创建一个工程
用这种方法生成的dll不能使用,因此编译器在生成dll的时候
莫名其妙的给每个函数前加上了一些字符
比如你写的Dll里面有一个函数GetName(),生成的Dll里面函数名
会变成??GetName()之类的名字,这样在调用GetProcAddress时就会出错
不知道有没有 人知道其解决方法
选择win32dynamic-link libary
然后选择 A dll that exports some symbols创建一个工程
用这种方法生成的dll不能使用,因此编译器在生成dll的时候
莫名其妙的给每个函数前加上了一些字符
比如你写的Dll里面有一个函数GetName(),生成的Dll里面函数名
会变成??GetName()之类的名字,这样在调用GetProcAddress时就会出错
不知道有没有 人知道其解决方法
解决方案 »
- 动态链接库中使用外部传入的fd出错
- 能不能卸载另一个程序里的DLL
- 我使用字体对话框,GetLogFont(&logfont)的问题
- 一些辅助工具有用吗?
- #pragma code_seg( ["section-name"[,"section-class"] ] )
- 怎样在一个编辑框里加入滚动条???
- 急,数据库问题,在线等!
- 请教,使用COM接口调用Photoshop中的功能??
- 有谁能解决这个问题????请大家一起帮忙!
- 重装VS2005后,MFC ActiveX工程生成的插件不能在其它机器上使用
- ★★★★ 在线等待 --- 轻松取分,有关视图View的问题 ,别犹豫,进来吧 ! ★★★★
- 有关对话框中,控件的操作(初初级问题,相当于送分啦~)
1.DLL中有如下函数:
void Initialize()
{
AfxMessageBox(_T("Hello!"));
}
2.EXE中调用:
HMODULE hDll = LoadLibrary(mydll.dll);
ASSERT(hDll);
typedef void(*FUN)();
FUN pfun;
pfun = (FUN)GetProcAddress(hDll , "Initialize");// 通过函数名称,得到函数地址if(!pfun)
{
AfxMessageBox(_T("函数地址为空!"));
return;
}
else
{
(*pfun)(); // 调用Initialize函数
}