Windows使用libimobiledevice Library
使用的Library来自 http://www.bingtech.net/wordpress/2011/03/189/ 。但是在直接编译中有一些问题需要解决。
1. CrtIsValidHeapPointer崩溃
原因是free的内存不是在一个堆上申请的,这个主要是由libimobiledevice申请的内存,即,当libimobiledevice生成的内存需要使用如下方式free:
typedef void (*MYFREEFUNC)(void *memblock);
MYFREEFUNC Myfree;
void InitFreeFunc()
{
HMODULE hMod = LoadLibrary(_T("msvcrt.dll"));
Myfree = (MYFREEFUNC)GetProcAddress(hMod, "free");
}
使用Myfree进行free。
2. Release版本指针引用崩溃
由于Release的代码优化导致,找到“配置属性”-》“连接器”-》“优化”,把右边的“引用”值改成/OPT:NOREF
------------------------------
文章的授權使用CC BY-ND2.5協議。凡是標示“轉載”的文章,均來源於網絡並儘可能標註作者。如果有侵犯您的權益,請及時聯繫刪除或者署名、授權。
Gtalk/Email: cmd4shell [at] gmail.com