iphone-common-codes-ccteam源代码 CCDylib.h

本文介绍了一个用于iOS平台的动态库加载器CCDylib,提供了动态库的加载与卸载功能,并定义了不同类型函数指针的获取方式。该加载器支持从文件路径、系统库以及Mobile Substrate路径加载动态库。
//  
// CCDylib.h
// CCFC
//
// Created by xichen on 11-12-23.
// Copyright 2011 ccteam. All rights reserved.
//

#import <Foundation/Foundation.h>

#define MOBILE_SUBSTRATE_PATH @"/Library/MobileSubstrate/DynamicLibraries/"

typedef void (*voidVoidFunc)();
typedef int (*intVoidFunc)();
typedef char * (*charStarVoidFunc)();
typedef NSString * (*nSStringVoidFunc)();

@interface CCDylib : NSObject
{
@private
void * _handle;
}

+ (void *)open:(NSString *)dylibFileFullPath;
+ (void *)openSystemDylib:(NSString *)dylibFileName;
+ (void *)openMobileSubstrateDylib:(NSString *)dylibFileName;

+ (int)close:(void *)dylibPtr;


- (id)initWithFileFullPath:(NSString *)fileFullPath;
- (id)initWithSystemDylib:(NSString *)dylibFileName;
- (id)initWithMobileSubstrateDylib:(NSString *)dylibFileName;
- (void)dealloc;

- (intVoidFunc)getIntVoidFunc:(NSString *)funcName;
- (voidVoidFunc)getVoidVoidFunc:(NSString *)funcName;
- (charStarVoidFunc)getCharStarVoidFunc:(NSString *)funcName;
- (nSStringVoidFunc)getNSStringVoidFunc:(NSString *)funcName;

- (NSString *)getError;

- (int)close;

@end

googlecode链接地址(会有更新):[url]http://code.google.com/p/iphone-common-codes-ccteam/source/browse/trunk/CCFC/files/CCDylib.h[/url]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值