zoukankan      html  css  js  c++  java
  • Symbian DLL,Lib(动态加载动态库,静态加载动态库,静态加载静态库)

       现在写的通用的平台,Client/Server Side 都要求插件形式,每一个插件宿主于一个动态库中,在Symbian中,动态的调用有些不是很方便,现在总结一下其各种类型库的加载形式。

    0, 静态库:

    1, 动态库:
             a,静态加载:
             b,动态加载:
    动态库动态加载的几个问题:
    1,在emulator上不能被load,原因有几个可能:
             1.1此动态库中使用了C的库(如strlen/malloc,free  etc.)并且在依赖的lib你手工加入了estlib.lib,编译成功,但无法正常load,因为Carbide.vs2.0.1在进行dll编译时,自动加入了estlib.lib,如果你再加入estlib.lib就会出现加载失败,有点弱智编译环境吧,当我使用OpenC时,也会出现这个问题。动态库必须使用CodeWarrior进行编译,才能在调试环境下进行加载,不然用carbide.vs2.01编译后,加载会返回-2错误。
            1.2但是如果你使用exe就必须在工程中加入estlib.lib.因为exe缺省没有estlib.lib包含。 
            1.3能力:动态库的操作能力必须与加载它的exe/dll能力匹配,匹配原则为。exe/dll能力一定是被它加载的dll能力的子集(?) 
           
    2,在真机上加载失败:
            2.1.没有访问目录的权限:
                 可能安装动态库的目录,加载程序没有访问权限,如sys/bin/目录,没有访问权限,或者private等目录,返回错误码一般为-46。可以为你的应用程序加入AllFiles能力
            2.2. 加载目录错误(加载返回值一般为-1)
            2.3.

  • 相关阅读:
    自定义组件要加@click方法
    绑定样式
    647. Palindromic Substrings
    215. Kth Largest Element in an Array
    448. Find All Numbers Disappeared in an Array
    287. Find the Duplicate Number
    283. Move Zeroes
    234. Palindrome Linked List
    202. Happy Number
    217. Contains Duplicate
  • 原文地址:https://www.cnblogs.com/windwithlife/p/845910.html
Copyright © 2011-2022 走看看