HINSTANCE hInst = LoadLibrary(L"iTunesMobileDevice.dll");
if (hInst == NULL)
{
cout<<"LoadLibrary failed!"<<endl;
return -1;
}
typedef afc_error_t (*AFCDeviceInfoOpen)(struct afc_connection *, struct afc_dictionary **);
AFCDeviceInfoOpen test = NULL;
test = (AFCDeviceInfoOpen)GetProcAddress(hInst, "AFCDeviceInfoOpen");
struct afc_connection conn;
struct afc_dictionary info;
struct afc_dictionary* p = &info;
test(&conn,&p);test调用崩溃了啊,这个dll里面的函数到底该怎么调用呢?
if (hInst == NULL)
{
cout<<"LoadLibrary failed!"<<endl;
return -1;
}
typedef afc_error_t (*AFCDeviceInfoOpen)(struct afc_connection *, struct afc_dictionary **);
AFCDeviceInfoOpen test = NULL;
test = (AFCDeviceInfoOpen)GetProcAddress(hInst, "AFCDeviceInfoOpen");
struct afc_connection conn;
struct afc_dictionary info;
struct afc_dictionary* p = &info;
test(&conn,&p);test调用崩溃了啊,这个dll里面的函数到底该怎么调用呢?
需要安装 iTunes(Mobile Device Support),
然后把相关目录设置到环境变量中,才能成功加载这个 DLL。
至于使用,网上有文件操作的 Demo,但是其他的就要自己去做逆向分析了。
http://stackoverflow.com/questions/6248225/manage-files-on-idevices
进行到这里的时候,第二个参数需要一个从CFString转过来的void*类型,我用的vs2010,没有NSTR和CFString的头文件,这第二个参数该怎么写啊?
{
DWORD unk0;
BYTE sign[4];
BYTE length;
char string[1];
void Init()
{ unk0 = 0;
sign[0] = 0x8c;
sign[1] = 07;
sign[2] = 01;
sign[3] = 0;
}
operator LPSTR (){ return string; }
operator LPCSTR ()const{ return string; }
}; 这个结构体该怎么用啊?
是 Win 上的一个 Demo,是 Total Commander 的一个插件。
CoreFoundation.h 在VS的头文件查找路径中吗?
CoreFoundation.h 在VS的头文件查找路径中吗?我把corefoundation.h加进去了,已经可以用了。我想完成iphone的备份。现在可以读到ipad里面的用户系统的目录,但是系统的目录却读不到不知道为什么,用itnues查看用户目录和系统目录是分开的,ipad已经越狱,是在读取目录的时候要设置什么参数吗?
CoreFoundation.h 在VS的头文件查找路径中吗?AMSArchiveBackup这个函数没有原型,怎么调用啊?