Js + UI = exe?

di il
8 risposte

Js + UI = exe?

Ciao a tutti.
Ho scritto un programma in js.
In abbinato c'è anche un file d'interfaccia utente(UI).
Siccome il codice è facilmente visibile e modificabile, vorrei evitare ciò, perché se un utente non sa i parametri che va a modificare, potrebbe fare saltare l'hardware che l'applicazione controlla.

Volevo chiedervi se esiste un modo per compilare questi file,in un file avviabile.Ho provato con visual studio,ma il programma non si apre.
Grazie

8 Risposte

  • Re: Js + UI = exe?

    Forse hai sbagliato linguaggio di programmazione!
  • Re: Js + UI = exe?

    Grazie della risposta.
    In che senso ho sbagliato linguaggio?
  • Re: Js + UI = exe?

    Nel senso che un "exe" si genera da

    -fortran|C|C++|Assembler|C#

    Linguaggi come JS|Java|Python|.. usano una virtual machine. In pratica per questi linguaggi NON ESISTE il concetto di "exe"
  • Re: Js + UI = exe?

    Capisco.
    Quindi non esiste modo di nascondere il file js e ui in qualcosa di avviabile senza modificarne il codice?
  • Re: Js + UI = exe?

    Cerca con Google "javascript to exe".
  • Re: Js + UI = exe?

    Ok,adesso guardo.Ma il mio problema era quello se potevo anche inserire il file .ui oltre al .js
  • Re: Js + UI = exe?

    zonalimitatore ha scritto:


    Ho scritto un programma in js.
    In abbinato c'è anche un file d'interfaccia utente(UI).
    Che tipo di programma è?
    Dove gira precisamente, nel browser oppure usando un runtime tipo Node?
  • Re: Js + UI = exe?

    E' un file di script communicator (.sce)
    <ExecutableConfig version="05.10">
      <Scripts>
        <Script path="./scripts/TMC220X.js"/>
      </Scripts>
      <LibraryPaths/>
      <PluginPaths/>
      <ScriptArguments/>
      <Options withScriptWindow="0" notMinimized="0" minScVersion="4.18"/>
    </ExecutableConfig>
    che va a chiamarmi un file .js
    Piccolo esempio
    // ****************** Start COM-Port ********************************
    
    var serialPort = scriptThread.createSerialPort();
    var baudrate = 115200; //115200 57600 9600
    var anticollisionTime = 3 * 80 * 1000 / baudrate;
    var receivedData = [];
    var packetsSend = 0,
        packetsReceived = 0;
    
    var chip = {
        TMC2208: "TMC2208",
        TMC2209: "TMC2209"
    };
    
    var currChip = chip.TMC2208;
    
    var settings = scriptThread.getMainInterfaceSerialPortSettings();
    UI_COMPORT_comboBox.addItem(settings.name);
    
    for (var i = 1; i < 50; i++) {
        UI_COMPORT_comboBox.addItem("COM" + i);
    }
    
    function chipChanged() {
        currChip = UI_Chip_comboBox.currentText();
        initTreeWidget(AllRegisters, UI_GeneralTreeWidget);
        UI_StallGuard_groupBox.setEnabled(currChip === chip.TMC2209);
    }
    
    function connectButtonClicked() {
        if (UI_Connect_pushButton.text() === "Connetti") {
            //var x = UI_COMPORT_comboBox.currentText();
    
            serialPort.setPortName(UI_COMPORT_comboBox.currentText());
            if (serialPort.open()) {
                serialPort.setBaudRate(baudrate);
                serialPort.setDataBits(8);
                serialPort.setParity("None");
                serialPort.setStopBits("1");
                serialPort.setFlowControl("None");
                serialPort.setDTR(true);
                serialPort.setRTS(true);
    
                UI_Connect_pushButton.setText("Disconnetti");
    
                UI_Chip_comboBox.setEnabled(false);
    
                packetsSend = 0;
                packetsReceived = 0;
                if (initAfterConnection()) {
                    UI_tabWidget.setEnabled(true);
                    return; // connection successful
                }
            } else {
                scriptThread.messageBox("Critical", "Errore", "Non posso aprire la porta seriale.");
            }
        }
    con un'interfaccia grafica (.ui)
    Piccolo esempio
    <?xml version="1.0" encoding="UTF-8"?>
    <ui version="4.0">
     <author>Zonalimitatore</author>
     <class>Dialog</class>
     <widget class="QDialog" name="Dialog">
      <property name="windowModality">
       <enum>Qt::ApplicationModal</enum>
      </property>
      <property name="enabled">
       <bool>true</bool>
      </property>
      <property name="geometry">
       <rect>
        <x>0</x>
        <y>0</y>
        <width>920</width>
        <height>620</height>
       </rect>
      </property>
      <property name="sizePolicy">
       <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
        <horstretch>0</horstretch>
        <verstretch>0</verstretch>
       </sizepolicy>
      </property>
      <property name="minimumSize">
       <size>
        <width>920</width>
        <height>620</height>
       </size>
      </property>
      <property name="maximumSize">
       <size>
        <width>920</width>
        <height>620</height>
       </size>
      </property>
      <property name="sizeIncrement">
       <size>
        <width>920</width>
        <height>620</height>
       </size>
Devi accedere o registrarti per scrivere nel forum
8 risposte