Я разрабатываю файловый менеджер, который подключается к FTP-серверам, используя мой собственный класс 'ServConnect'.Я получаю сообщение об ошибке # 1009 при вызове downloadFTPIcon ();функция внутри слушателя myListenerFunctionreq.Фактическая функция (downloadFTPIcon) находится вне функции myListenerFunctionreq.он находится в том же кадре, что и другая функция.
Я попытался отключить функцию, удалив обязательный параметр String.Я также попытался объединить функции.
function fetchFTPIcon():void {
var reqFTP:ServConnect;
reqFTP = new ServConnect(curObj._server, curObj._user, curObj._pass, curObj._port);
reqFTP.listener = myListenerFunctionreq;
ico.gotoAndStop(10);
var isError:Boolean = false;
function myListenerFunctionreq(e):void {
if (e.type == "loginSuccess") {
//if(MovieClip(parent).curNetworkDirPath.slice(0,2) == "//") {
//trace(String("is double slash "+MovieClip(parent).curNetworkDirPath.slice(1, MovieClip(parent).curNetworkDirPath.length))+"/"+globalNetworkName)
//reqFTP.showFile(String(MovieClip(parent).curNetworkDirPath.slice(1, MovieClip(parent).curNetworkDirPath.length))+"/"+globalNetworkName);
//} else {
//trace(String("no double slash "+MovieClip(parent).curNetworkDirPath.slice(1, MovieClip(parent).curNetworkDirPath.length))+"/"+globalNetworkName)
reqFTP.showFile("/ServConnectMeta.xml");
//}
} else if (e.type == "error" || e.type == "directoryFaild") {
reqFTP.closeWhenReady();
isError = true;
ico.gotoAndStop(7);
} else if (e.type == "gotFile") {
if(!isError) {
//fileBA = e.byteArray;
//ico.image.loadFromBytes(e.byteArray);
reqFTP.closeWhenReady();
var curMetaFile:XML = XML(e.str);
if(curMetaFile.hasOwnProperty("icon")) {
if(String(curMetaFile.icon).length > 2) {
iconLocNetwork = curMetaFile.icon.toString();
downloadFTPIcon();
} else {
ico.gotoAndStop(7);
}
} else {
ico.gotoAndStop(7);
}
}
} else if (e.type == "gotFileSize") {
trace("GOT FILE SIZE! == "+e.str);
} else if (e.type == "progress") {
//trace(e.msg);
}
}
}
function downloadFTPIcon():void {
var reqFTP:ServConnect;
...
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at Function/sidebarEntry/fetchFTPIcon/myListenerFunctionreq()[sidebarEntry::frame1:81]
at com.alwinlubbers::ServConnect/_listener()[/Volumes/Bestanden/AlwinLubbers Edit/ServConnect Server/com/alwinlubbers/ServConnect.as:655]
at Function/com.alwinlubbers:ServConnect/private:onReceivedSCmd/com.alwinlubbers:timerDone()[/Volumes/Bestanden/AlwinLubbers Edit/ServConnect Server/com/alwinlubbers/ServConnect.as:187]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()