正在加载插件(DLL)
发布时间:2020-12-26 02:52:56 所属栏目:Windows 来源:网络整理
导读:有没有办法在D动态加载和调用DLL中的函数?我希望我的程序能够在启动时加载插件,也可以在运行中加载插件. 这取决于你想要获得的动态.如果你想动态加载一个dll并运行一些预定义的函数,那么有一个很好的包装器,由Wei Li here.由于模板的强大,它可以让你做这些
有没有办法在D动态加载和调用DLL中的函数?我希望我的程序能够在启动时加载插件,也可以在运行中加载插件. 这取决于你想要获得的动态.如果你想动态加载一个dll并运行一些预定义的函数,那么有一个很好的包装器,由Wei Li here.由于模板的强大,它可以让你做这些事情: // define functions alias Symbol!("MessageBoxW",int function(HWND,LPCWSTR,UINT)) mbw; alias Symbol!("MessageBoxA",LPCSTR,UINT)) mba; // load dll auto dll = new Module!("User32.dll",mbw,mba); // call functions dll.MessageBoxW(null,"Hello! DLL! ","Hello from MessageBoxW",MB_OK); dll.MessageBoxA(null,"Hello from MessageBoxA",MB_OK); 代码为D1.对于D2,您必须用字符串替换char [],使用toStringz()并可能删除范围.编辑:这个代码的my D2 port可能对其他人发现这个问题有用. (编辑:濮阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 配置管理 – 我可以使用什么工具来管理Windows Server环境的
- 如何在Ubuntu LTS系统上启用Canonical的内核实时补丁服务
- Windows是否尝试查找IPv6 AAAA记录,即使它没有可路由的IPv6
- 次次都登录太麻烦 教你关闭Windows 10锁屏
- windows-server-2012-r2 – 我是否需要在每个虚拟机中安装防
- windows-server-2008-r2 – 重命名Exchange 2010 SP2服务器
- 重回榜首的BERT改进版开源了,千块V100、160GB纯文本的大模
- 如何在安装之前检查 Linux 软件包的版本?
- 新手教程:如何在Linux下解压Zip文件
- windows – 我应该用什么工具格式化硬盘作为UDF?