5

मुझे एक त्रुटि है कि मुझे समझ में नहीं आता कि क्यों दिखाई देता है, सबसे अजीब ऐसा होता है जो कभी-कभी होता है लेकिन हाल ही में होता है, मैं जो कोड उपयोग करता हूं वह वही है और मैंने इसमें कोई बदलाव नहीं किया है, वास्तव में मैं एप्लिकेशन की शुरुआत में किसी भी कोड को निष्पादित नहीं करता हूं, इसलिए मैं बटन का उपयोग करता हूं, इसलिए मुझे इस त्रुटि के साथ कोई कारण नहीं मिलता है, कृपया मेरी मदद करें, त्रुटि एक संवाद है जो कहता है:फ़्लैश बिल्डर 4.6 मूल एक्सटेंशन त्रुटि

मूल एक्सटेंशन त्रुटि: पैकेजिंग हैं त्रुटियों/चेतावनी। प्रत्येक लक्ष्य प्लेटफ़ॉर्म के लिए फ्लेक्स बिल्ड पैकेजिंग पृष्ठ में प्रत्येक मूल एक्सटेंशन की जांच करें। आप जारी रखना चाहेंगे?

और जब मैं हाँ कार्यक्रम शुरू न करें क्लिक करें, debbuger मुझे लाइन दिखाने:

[SWF] SerialCOMGame.swf - विसंपीड़न के बाद 2,121,630 बाइट्स

लेकिन कभी शुरू, मैं के लिए RS232 पुस्तकालय का उपयोग कर रहा धारावाहिक संचार, इससे पहले की इस त्रुटि यह काम ठीक मिलता है लेकिन मुझे नहीं पता कि क्या होने, मेरे सी कोड है:

/* 
* NativeSerialComunication.c 
* 
* Created on: Jan 10, 2012 
*  Author: Diego Fernando 
*/ 
#include "NativeSerialComunication.h" 
int comport = 0; 
int baudrate = 57600; 
int buffsize = 4096; 
unsigned char buffer[4096]; 
uint32_t comportOpened = 0; 
FREObject IsSupported(FREContext ctx, void* functionData, uint32_t argc, 
     FREObject argv[]) { 
    FREObject result; 
    uint32_t isSuppoerted = 1; 
    FRENewObjectFromBool(isSuppoerted, &result); 
    return result; 
} 

int startCOMListener() { 
    if (!OpenComport(comport, baudrate)) { 
     comportOpened = 1; 
     return 1; 
    } 
    return 0; 
} 

void stopCOMListener() { 
    CloseComport(comport); 
    comportOpened = 0; 
} 

void COMListener(FREContext ctx) { 
    uint8_t compbytes = 0; 
    while (comportOpened) { 
     compbytes = PollComport(comport, buffer, buffsize); 
     FREDispatchStatusEventAsync(ctx, (const uint8_t *) "listening for data",(const uint8_t *)"datalistening"); 
     if (compbytes) { 
      FREDispatchStatusEventAsync(ctx, (const uint8_t *) buffer, 
        (const uint8_t *) "datareceived"); 
     } 
     Sleep(100); 
    } 
} 
FREObject startSerialListener(FREContext ctx, void* functionData, uint32_t argc, 
     FREObject argv[]) { 
    FREObject result; 
    if (startCOMListener()) { 
     CreateThread((LPSECURITY_ATTRIBUTES) NULL, 0,(LPTHREAD_START_ROUTINE) COMListener, ctx, 0, NULL); 
     FREDispatchStatusEventAsync(ctx, (const uint8_t *) "listener started", 
            (const uint8_t *) "listenerstarted"); 
    } 
    FRENewObjectFromBool(comportOpened, &result); 
    return result; 
} 

FREObject stopSerialListener(FREContext ctx, void* functionData, uint32_t argc, 
     FREObject argv[]) { 
    FREObject result; 
    stopCOMListener(); 
    FRENewObjectFromBool(comportOpened, &result); 
    return result; 
} 

FREObject sendDataToSerialPort(FREContext ctx, void* functionData, 
     uint32_t argc, FREObject argv[]) { 
    FREObject result; 
    uint32_t dataSended = 0; 
    uint32_t dataToSend = 0; 
    FREGetObjectAsUint32(argv[0],&dataToSend); 
    printf("data to be sended %d",dataToSend); 

    if (comportOpened && !SendByte(comport,dataToSend)) { 
     dataSended = 1; 
    } 
    FRENewObjectFromBool(dataSended, &result); 
    return result; 
} 

void MyContextInitializer(void* extData, const uint8_t* ctxType, FREContext ctx, 
     uint32_t* numFunctionsToSet, const FRENamedFunction** functionsToSet) { 

    *numFunctionsToSet = 4; 

    FRENamedFunction* func = (FRENamedFunction*) malloc(
      sizeof(FRENamedFunction) * 4); 
    func[0].name = (const uint8_t*) "isSupported"; 
    func[0].functionData = 0; 
    func[0].function = &IsSupported; 

    func[1].name = (const uint8_t*) "sendDataToSerialPort"; 
    func[1].functionData = 0; 
    func[1].function = &sendDataToSerialPort; 

    func[2].name = (const uint8_t*) "startSerialListener"; 
    func[2].functionData = 0; 
    func[2].function = &startSerialListener; 

    func[3].name = (const uint8_t*) "stopSerialListener"; 
    func[3].functionData = 0; 
    func[3].function = &stopSerialListener; 

    /*func[1].name = (const uint8_t*) "sayHelloWorld"; 
    func[1].functionData = 0; 
    func[1].function = &sayHelloWorld;*/ 

    *functionsToSet = func; 
} 

void MyContextFinalizer(FREContext ctx) { 
    return; 
} 

void initializer(void** extDataToSet, 
     FREContextInitializer* ctxInitializerToSet, 
     FREContextFinalizer* ctxFinalizerToSet) { 
    extDataToSet = 0; // This example does not use any extension data. 
    *ctxInitializerToSet = &MyContextInitializer; 
    *ctxFinalizerToSet = &MyContextFinalizer; 

} 

void finalizer(void** extDataToSet) { 
    stopCOMListener(); 
    return; 
} 

और ये मेरे ActionScript कोड है कि देशी सी कोड का उपयोग है:

package com.nativeserialcomunication.driver 
{ 
    import flash.events.EventDispatcher; 
    import flash.events.IEventDispatcher; 
    import flash.events.StatusEvent; 
    import flash.external.ExtensionContext; 

    public class NativeSerialComunication extends EventDispatcher 
    { 
     private var extensionContext:ExtensionContext; 
     private var isSerialListenerStarted:Boolean = false; 
     public function NativeSerialComunication(target:IEventDispatcher=null) 
     { 
      super(target); 
      extensionContext =ExtensionContext.createExtensionContext("com.nativeserialcomunitacion.driver.NativeSerialComunitation",""); 
      extensionContext.addEventListener(StatusEvent.STATUS,statusHandle); 
     } 

     public function init():void{ 
      if(extensionContext.call("startSerialListener") as Boolean){ 
       isSerialListenerStarted = true; 
       trace("serial listener started"); 
      } 
      else{ 
       trace("no serial listener started"); 
      } 
     } 

     public function statusHandle(event:StatusEvent):void{ 
      trace("the event ("+event.level+") received, data:"+event.code); 
     } 

     public function isSupported():Boolean{ 
      return extensionContext.call("isSupported") as Boolean; 
     } 

     public function sendDataToSerialPort(data:uint):Boolean{ 
      return extensionContext.call("sendDataToSerialPort",data) as Boolean; 
     } 
    } 
} 
+0

मुझे यह दिखता है ... सीधे सीरियल संचार के लिए ArduinoConnector (http://code.google.com/p/as3-arduino-connector/wiki/Introduction) का उपयोग कर रहा है लेकिन इसमें कुछ समस्याएं हैं कुछ शर्तें। डिएगो, क्या आपको यह प्रत्यक्ष सीरियल एएनई काम मिल रहा है? क्या आप इसे दूसरों के लिए उपलब्ध करा सकते हैं? धन्यवाद! – ericsoco

उत्तर

9

आपके लक्षित प्लेटफ़ॉर्म के लिए मूल एक्सटेंशन पैकेज चेकबॉक्स को चेक करने की आवश्यकता हो सकती है।

नेविगेट करने के लिए:

प्रोजेक्ट गुण -> फ्लेक्स पैकेजिंग का निर्माण -> एप्पल आईओएस (या Android, आदि)

मूल निवासी एक्सटेंशन टैब का चयन करें और सुनिश्चित करें कि "पैकेज" चेक किया गया है।

+0

भयानक मेरे दोस्त आप सबसे अच्छे हैं, मुझे बहुत बर्बाद समय बचाओ: डी –

संबंधित मुद्दे