运行时 加载指定目录的dll

fakine fakine 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
应用程序需要依赖一个dll
是通过
#include "..\skint.h"
#pragma comment(lib, "skint.lib")
这种静态方式 链接
现在问题是, 运行时 这个dll不能和exe放一起,要放到一个指定的目录,请问怎么做?

如果是动态加载
int APIENTRY _tWinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPTSTR lpCmdLine, int nCmdShow)
{
::LoadLibrary(_T("skint.DLL"));
刚开始的时候 我这样加载,但是 提示找不到skint.dll 程序根本运行不起来。
}
...全文

相关推荐

C#调用托管DLL加载方式[可运行源码]

这种方式适用于当你已经知道DLL将被部署在特定目录下时,能够在应用程序启动时就指定查找路径,从而加快程序集的加载过程,并确保程序集能被正确找到。

gold

改变隐式加载dll路径的方法实例代码

调用这个函数可以将指定的目录添加到搜索路径列表的开头,或者如果`lpPathName`参数为NULL,则移除该目录。这样,当程序尝试隐式加载DLL时,系统会首先检查这个新添加的目录。

memerycyb

dll内存加载

**搜索顺序**:当程序请求加载一个DLL时,Windows会按照以下顺序查找: - 当前目录 - 程序的可执行文件目录 - 系统目录 - Windows目录 - PATH环境变量指定的目录4.

京城一十三

把一个动态链接库作为一个资源嵌入到可执行文件,在可执行文件运行时,自动从资源中释放出来,通过静态加载延迟实现DLL函数的动态加载

C++中可以直接设置`delayload`属性,而在C#中,通常需要自定义实现延迟加载。6. **资源管理**:如果DLL作为资源嵌入到EXE中,需要在程序运行时将其解压到临时目录,然后加载。

FUNNY

C++无法加载dll动态库

如果DLL不在正确的位置,或者没有在PATH环境变量中指定其所在目录,加载可能会失败。确保DLL位于应用程序的同一目录下,或者将其路径添加到系统路径中,可以解决这个问题。4.

u010781675
评论 11
收藏 已收藏
分享
返回顶部
fakine
C++ 语言 65,214 成员 250,514 内容