我可以使用NPAPI在一个DLL中创建多个插件吗
May I create multiple Plugins in one DLL using NPAPI?
到目前为止,每个.dll
文件只能有一个插件,对吗?浏览器对每个dll只调用NP_GetEntryPoints
、NP_Initialize
和NP_Shutdown
"一次",对吗?
我的目标是在一个动态库中创建多个插件。这可能吗?如果可能,怎么可能?
到目前为止,我看到的是,每个.dll文件只能有一个插件,这是正确的吗?
不,您可以在一个DLL中实现多个插件。
浏览器对每个dll只调用NP_GetEntryPoints、NP_Initialize和NP_Shutdown"一次",对吧?
每个进程和加载仅一次(请记住,当没有实例处于活动状态时,它将被卸载)。
我的目标是在一个动态库中创建多个插件。这可能吗?如果可能,怎么可能?
这是可能的。您只需为同一个动态库注册不同的mimetype(例如,在Windows上,注册表中的几个mimetype条目指向同一个DLL)。
NPP_New()
得到一个NPMIMEType
作为它的第一个参数,让我们确定请求了哪个"插件"。
此外,NP_GetMIMEDescription()
需要进行调整(在Linux和Mac OS上使用)。
在Windows上,您应该在版本信息(条目MIMEType
)中有以|
分隔的mimetypes列表。
相关文章:
- std::threads可以从Windows DLL中的全局变量创建/销毁吗?
- 链接到自行创建的dll失败
- 是否可以在Linux上使用.Net Core 3.1创建C++/CLI代码的C#DLL
- 在Visual Studio 2017中创建的简单DLL不会在XP中加载
- 如何在C++非托管/本机 DLL 中从注册免费 COM C# 托管 DLL 创建 COM 对象
- std::async 如果线程是从 DLL 创建的,则会阻止进程退出?
- C 和WXWIDGETS DLL创建并与Microsoft Access一起使用
- C++从 DLL 创建结构
- 释放DLL创建的对象
- DLL 创建类型
- 使用 DLL 创建要在 C# 中使用的数组
- 在Qt中从dll创建WinForm
- 如何在Ox中写入dll创建的文件
- 正在从DLL创建PDB
- GameMaker Studio,从Windows DLL创建异步事件
- c#导入c++非托管dll并从一个dll创建多个实例
- 为64位dll创建32位包装器.这可能吗?
- 无法从 MFC DLL 创建模式对话框
- 从.Net Dll创建.Ocx文件
- 如何为非托管的c dll创建一个c++cli包装器