LoadLibrary失败,何故?

sdcer 2006-04-24 11:38:55
在我的程序中,调用我写的MyDll.dll,代码如下:

hMoudle = LoadLibrary("MyDll.dll");
if (hMoudle == NULL)
DWORD dwErr = GetLastError();

发现hMoudle返回NULL(说明加载dll失败),但GetLastError()返回的是0(说明没有错误),这是什么原因?dll放在exe当前目录下,应该不是路径的问题。

后来,我又在MyDll.dll工程中,以调试的方式运行(在dll源程序中设置断点,以调试的方式运行,在dll工程中设置运行的exe),发现:程序根本没有进入MyDll.dll中的DllMain(), 也就是说,连dll的入口都没进入。

我想,我的dll工程中中设置了一些相对路径,在编译选项中以:"..\..Else"形式写入相对路径,也就是说这个dll用到了工程目录的上一层的上一层的else文件夹中的.h文件以及lib,我想是不是和这个有关?但我用depends工具查看,发现mydll.dll没有缺少其它的库文件,请各位指教。

此外,如果把所有的.h和.lib所在文件夹全放入工程目录下(不使用..\..else这种形式),就可以正常加载。但是这没有道理啊。
...全文
316 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdcer 2006-06-01
  • 打赏
  • 举报
回复
以上说的都不对,原因是这样的:
是其它路径下的.cpp文件的文件名必须比当前路径下的文件名大(即strcmp()>0),
呵呵,很奇怪的问题。
lyl_rabbit 2006-04-24
  • 打赏
  • 举报
回复
只把DLL文件放到当前目录下就可以了
Kudeet 2006-04-24
  • 打赏
  • 举报
回复
LoadLibrary写入绝对路径测试一下不就可以排除是不是路径问题了
贵子潘 2006-04-24
  • 打赏
  • 举报
回复
还有注意一下你的DLL和测试程序是不是是同一版本,如DEBUG
内容概要:本文档是关于“基于小信号扫频辨识的光伏并网逆变器正负序交互稳定性分析”的博士论文复现资源,配套提供Matlab代码与Simulink仿真实现。内容聚焦于弱电网条件下光伏并网逆变器的稳定性问题,深入研究其正负序阻抗建模方法、小信号扫频辨识技术及正负序交互失稳机理。通过构建高精度的系统仿真模型,采用扫频法提取逆变器在不同控制环路(如锁相环、电流环)影响下的序阻抗特性,并结合奈奎斯特稳定性判据评估其与电网阻抗之间的交互作用,系统性地揭示了宽频带振荡的产生机制。该资源完整还原了论文中的关键理论推导与仿真验证流程,适用于从事新能源并网、电力电子系统建模与稳定性分析的研究人员进行学习、复现与二次开发。; 适合人群:具备电力系统、电力电子与自动控制理论基础,熟练掌握Matlab/Simulink仿真工具,从事新能源发电并网、逆变器控制策略或电力系统稳定性研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 复现并验证博士论文中提出的光伏逆变器正负序阻抗建模与小信号扫频分析方法;② 深入理解弱电网环境下由正负序耦合引发的交互失稳现象及其物理机理;③ 掌握基于阻抗法的并网系统稳定性分析流程,为虚拟同步机、构网型控制等先进控制策略的稳定性研究提供技术参考与仿真支撑。; 阅读建议:建议学习者结合提供的代码与仿真模型,首先深入理解序阻抗建模与扫频辨识的基本原理,然后逐步调试仿真程序,重点关注锁相环动态、电流控制器参数对序阻抗曲线的影响,最终掌握从模型搭建、扫频测试到稳定性判据应用的全流程分析能力。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧