dll如何能够调用exe中的函数 我有一个EXE调用DLL,EXE设置一个CALLBACK函数,DLL中启动,但是执行的时候CALLBACK函数中不能对EXE的窗口进行操作,错误是Access is denied.如何解决???? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果你开发dll,exe的工具都是一样的,比如都是VC,可以考虑用C++的虚函数,晚绑定,很方便的. DLL调用EXE中的函数(就是回调机制麽)本身是没有任何问题的,windows不会对它做什么限制,问题就可能出在楼主的代码里了,楼主用单步调试一下看看是哪句话产生访问违规了? define a user messagein your dllUINT uret=RegisterWindowMessage("GET_ZWZ_EXE_BOOL");BSTR bstrret;SendMessage(wnd_of_exe,uret,0,(LPARAM)&bstrret);bool bdata;if(SysStringLen(bstrret)==4) bdata=true;else bdata=false;SysFreeString(bstrret);in your exealso UINT uret=RegisterWindowMessage("GET_ZWZ_EXE_BOOL");handle the messageBSTR* pbdata=(BSTR*)lParam;if(bTrue){*pbdata=_bstr_t("True").copy();}else{*pbdata=_bstr_t("False").copy();} 如何让树结点高亮显示 Messagebox的问题?请教一下 在任务栏中,右键弹出菜单添加了一些项目,如何获取鼠标点击事件? 求《深入解析ATL》电子文档下载 VC6.0在XPsp2下无法安装?~~~ 结构体指针的一个小问题(在线等) 又有新问题要请教了!(急) ATL组件接口有的方法为何在ActivexTestContainer可见,而在应用程序中不可见 我的Combo box怎么插不进去值啊?(在线) [非MFC]GDI+的DrawImage()函数效率太低了, 请问在GDI+中如何取一个窗口的背景图像? 关于waveOutWrite这个函数
in your dll
UINT uret=RegisterWindowMessage("GET_ZWZ_EXE_BOOL");
BSTR bstrret;
SendMessage(wnd_of_exe,uret,0,(LPARAM)&bstrret);
bool bdata;
if(SysStringLen(bstrret)==4)
bdata=true;
else
bdata=false;
SysFreeString(bstrret);in your exe
also UINT uret=RegisterWindowMessage("GET_ZWZ_EXE_BOOL");
handle the messageBSTR* pbdata=(BSTR*)lParam;
if(bTrue)
{
*pbdata=_bstr_t("True").copy();
}
else
{
*pbdata=_bstr_t("False").copy();
}