Ios4 CFWriteStreamRef EXC\u错误\u访问问题?文件传输协议

Ios4 CFWriteStreamRef EXC\u错误\u访问问题?文件传输协议,ios4,memory-leaks,ftp,exc-bad-access,assert,Ios4,Memory Leaks,Ftp,Exc Bad Access,Assert,我试图通过iPhone SDK连接到ftp服务器,以下是我的错误代码(简化): 我得到该行的错误“EXC_BAD_ACCESS”: CFWriteStreamSetProperty(流、kCFStreamPropertyFTPUserName、serverUsernameRef) 当我注释掉那一行时,它在下一行得到相同的错误。我想这可能 与内存泄漏有关,但我真的不知道我到底出了什么问题 提前谢谢 编辑: 我添加了一个断言,它似乎向我表明,即使在声明流之后,它仍然是零: 断言(流!=nil) 断言

我试图通过iPhone SDK连接到ftp服务器,以下是我的错误代码(简化):

我得到该行的错误“EXC_BAD_ACCESS”: CFWriteStreamSetProperty(流、kCFStreamPropertyFTPUserName、serverUsernameRef)

当我注释掉那一行时,它在下一行得到相同的错误。我想这可能 与内存泄漏有关,但我真的不知道我到底出了什么问题

提前谢谢

编辑:

我添加了一个断言,它似乎向我表明,即使在声明流之后,它仍然是零: 断言(流!=nil)

断言在这一行失败

我尝试在Instruments中运行该应用程序,它显示“发现泄漏”,但没有列出它们:
我为任何好奇的人找到了解决我自己问题的方法。 我忘了在URL前面加上“ftp://”,在调用时 “CFWriteStreamCreateWithFTPURL”函数,由于没有 由于URL无效,正在设置流。因此,设置了“流”
等于“nil”,因为它没有正确设置。

CFWriteStreamCopyError告诉您流的问题是什么?
NSURL *serverURL;
NSString *serverUsername;
NSString *serverPassword;
CFURLRef serverURLRef;
CFStringRef serverPasswordRef;
CFStringRef serverUsernameRef;

serverURL = [[NSURL alloc] initWithString: @"XX.XX.XX.XX"];
serverURLRef = (__bridge CFURLRef) serverURL;

serverUsername = [[NSString alloc] initWithString: @"********"];
serverUsernameRef = (__bridge CFStringRef)serverUsername;

serverPassword = [[NSString alloc] initWithString: @"********"];
serverPasswordRef = (__bridge CFStringRef)serverPassword;


CFWriteStreamRef stream = CFWriteStreamCreateWithFTPURL(kCFAllocatorDefault, serverURLRef);
    CFWriteStreamSetProperty(stream, kCFStreamPropertyFTPUserName, serverUsernameRef);
    CFWriteStreamSetProperty(stream, kCFStreamPropertyFTPPassword, serverPasswordRef);
    CFWriteStreamSetProperty(stream, kCFStreamPropertyFTPUsePassiveMode, kCFBooleanFalse);

    CFWriteStreamOpen(stream);