Che cos'è il formato di file FMX?
Il file .fmx è un modulo eseguibile compilato, specifico per la piattaforma, prodotto da Oracle Forms - il framework di lunga data di Oracle per la creazione di front-end di applicazioni database aziendali. Un file .fmx viene generato dall'Oracle Forms Compiler (frmcmp) a partire da un file sorgente .fmb (Forms Module Binary), ed è ciò che Oracle Forms Services effettivamente carica ed esegue in fase di runtime.
Poiché i file .fmx sono compilati per uno specifico sistema operativo e per una versione principale di Oracle Forms, lo stesso sorgente .fmb deve essere ricompilato separatamente per ogni piattaforma di destinazione - Windows, Linux o Solaris. Un .fmx compilato per Oracle Forms 12c non può essere eseguito sotto il runtime di Forms 14, e un .fmx compilato su Linux non funzionerà su Windows. Il file non può essere decompilato per tornare al suo sorgente .fmb.
Al runtime, frmweb (la servlet di Forms) carica il file .fmx lato server, esegue il bytecode dei trigger PL/SQL incorporati e renderizza la maschera nel browser dell'utente. I moduli compilati complementari includono .mmx (modulo menu compilato) e .plx (libreria PL/SQL compilata). Oracle Forms 14.1.2.0 è stato rilasciato a dicembre 2024, continuando una linea di prodotti che risale a Oracle Forms 3 negli anni '80. Oracle raccomanda APEX e Oracle JET per lo sviluppo di nuove applicazioni web, ma Forms rimane in uso attivo negli ambienti aziendali di tutto il mondo.
Sicurezza e incolumità
RISCHIO: LOWI file FMX sono artefatti lato server; gli utenti finali non li eseguono mai direttamente. Il rischio è limitato agli ambienti server Oracle. I file non possono essere eseguiti al di fuori del runtime di Oracle Forms.
Dettagli del formato
in sintesi- Plugin FileMaker Pro - FileMaker Pro utilizza .fmx (anche .fmplugin su macOS) per le DLL di plugin/estensione collocate nella cartella Extensions.
- FME Desktop Custom Transformer - FME Desktop (Safe Software) utilizza .fmx per i file di definizione dei trasformatori personalizzati (basati su XML).
Programmi che aprono file FMX
Dettagli tecnici
specifiche approfondite| Codifica del file | Binario (bytecode compilato proprietario di Oracle Forms) |
| Ordine dei byte | Dipendente dalla piattaforma; little-endian su x86/x64 Linux e Windows |
| Compilato da | File sorgente Oracle Forms `.fmb` utilizzando il comando `frmcmp` (Forms Compiler) |
| Compatibilità di versione | Legata alla versione principale di Oracle Forms; un `.fmx` di Forms 12c non funzionerà sotto il runtime di Forms 14 |
| Specificità della piattaforma | Deve essere compilato un `.fmx` separato per ogni OS di destinazione (Windows, Linux, Solaris); i file NON sono multipiattaforma |
| Motore di runtime | `frmweb` / `frmservlet` (servlet web di Oracle Forms Services) - eseguito solo lato server |
| Contenuto del bytecode | Descrittori di layout codificati in binario, bytecode dei trigger PL/SQL (Oracle p-code), metadati di blocchi/elementi, tabelle delle proprietà della maschera |
| Decompilabile | No - `.fmx` non può essere riconvertito nel file sorgente `.fmb` |
| Moduli complementari | `.mmx` (modulo menu compilato), `.plx` (libreria PL/SQL compilata) |
| Modello di distribuzione | Solo lato server; il client riceve l'output HTML renderizzato o l'applet Java, non il file `.fmx` stesso |
| Sicurezza | Nessuna crittografia intrinseca; accesso controllato tramite credenziali Oracle Database al runtime |
| Dimensione tipica del file | 50 KB - 5 MB |
| Tipo MIME | application/octet-stream (nessun MIME dedicato registrato) |
| Versione attuale | Oracle Forms 14.1.2.0 (rilasciato a dicembre 2024) |
| Rilasciato | Oracle Forms 3.0, mid-1980s (originally as compiled Designer/2000 form) |
| Ultima versione | Oracle Forms 14.1.2.0 (December 2024) |
| Specifica | docs.oracle.com |
Conversioni FMX
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file FMX.
Domande frequenti
Come apro un file FMX?
Come si compila un FMB in FMX?
frmcmp module=myform.fmb userid=user/pass@db output_file=myform.fmx. Oppure usa il menu Build > Compile All in Oracle Forms Builder.