在Symbian中DLL的制作和调用,该怎么解决
发布时间:2010-05-30 00:34:20 文章来源:www.iduyao.cn 采编人员:星星草
在Symbian中DLL的制作和调用
用Symbian制作DLL,在调用时,直接调用方法,不新建类,这样可以吗?
我用Symbian制作的DLL,必须要新建这个类然后再能调用其中的方法,应该怎样解决
------解决方案--------------------
#include<your_dll.h>就可以了
在mmp文件还要加上你的your_dll.lib才能通过编译
------解决方案--------------------
直接EXPORT一个函数就行了,然后如楼上所说,包含该DLL和头文件。
就可以直接用了。不一定非要建一个类的。
------解决方案--------------------
你可以使用 symbian中的RLibrary类来动态加载dll, RLibrary lib;
lib.load(DllName);
void*(*p)(void*) = lib.lookup(1);
.....
------解决方案--------------------
typedef IPluginBaseA* (* F_GET_PLUGIN)(void);
static IPluginBaseA* PluginLoadLibrary(const char* strLoadAddr, int& pHandle)
{
TBuf8<MAX_FILE_NAME_LENGTH> strAddr;
strAddr.SetLength(MAX_FILE_NAME_LENGTH);
strAddr.FillZ();
strAddr.Copy((TUint8*)strLoadAddr);
strAddr.TrimLeft();
strAddr.TrimRight();
TFileName dll;
dll.Copy(strAddr);
RLibrary libPlugin;
TLibraryFunction pfGetPlugin = NULL;
TInt ncode = libPlugin.Load(dll);
if (KErrNone != ncode)
{
log("failed load: ");
log(strLoadAddr);
pHandle = 0;
return NULL;
}
pfGetPlugin = libPlugin.Lookup(1);
IPluginBaseA* pPluginHandle = (IPluginBaseA*)pfGetPlugin();
pHandle = libPlugin.Handle();
return pPluginHandle;
};
这是我的加载代码。
------解决方案--------------------
定义静态方法,在静态方法中实例化类并调用类方法。
------解决方案--------------------
编写dll只要在开发IDE中按项目向导,就可以创建dll项目,只是别忘了用EXPORT_C 导出你的函数就可以了
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
高手,求个S60v3 FP2 320*240分辨率的SDK
求个S60v3 FP2 320*240分辨率的SDK,
240*320的SDK虽然可以调分辨率的,但我想要一个和E72一...
-
请教关于smybian上使用sqlite的问题
请问如何在symbian 9.1版本上使用sqlite啊?
------解决方案--------------------
直接去sql...
-
symbian 可以内嵌浏览器吗
谁有内嵌浏览器的简单代码吗?或者如何实现内嵌浏览器。谢谢
------解决方案--------------------
ht...
-
symbian:如何判断一个文件是否系统支持的手机铃声格式
现在需要扫描一些固定后缀的文件如MP3,aac等显示出来供用户选择设置为手机铃...
-
数据库求助!!
我创建了一个RDbStoreDatabase,想把通讯录的数据库内容复制过来,该如何实现?实在是不想一条条的insert。。。
------解...
-
Specified file '\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\WINSCW\UDEB\.lib' not found 什么意思?
请大家帮我解决一下,...
-
关于Symbian的express signed
我想给一个Symbian程序做一个express signed,在得到了publisheID后,还需要一个Content ID才能完成,可...
-
CPbkContactEngine::NewL()真机崩溃
如题,在模拟器上正常,在真机上崩溃
哪位遇到过?
------解决方案--------------------
我也遇...
-
请问在symbian如何获取最近手机基站的lac和cid?
请问在symbian如何获取最近手机基站的lac和cid?
------解决方案---------------...
-
求救rvct2.2问题:Cannot obtain license for Compiler (feature compiler) with license version >= 2.2
在carbide用rvct2.2编译...