Vad är filformatet VI?
Filer med filändelsen .vi tillhör kategorin virtuella instrumentfiler som används inom programmeringsmiljön LabVIEW, utvecklad av National Instruments (nu NI, en del av Emerson).
Vad innehåller .vi-filer?
En .vi-fil lagrar ett virtuellt instrument - en applikation som simulerar driften av verklig laboratorieutrustning såsom en multimeter eller ett oscilloskop. Varje fil innehåller två huvudsektioner: en grafisk källkod skriven i G-språket (LabVIEWs dataflödesbaserade programmeringsspråk) och dess kompilerade körbara version. Inom den grafiska sektionen hittar du:
- användargränssnitt (frontpanelen)
- blockschema, som innehåller G-språkets källkodstrådar och noder
- datarymd
- anslutningspanel (connector pane)
- ikon som används för att representera instrumentet när det placeras som en SubVI inuti ett annat blockschema
Den kompilerade koden som lagras i den andra sektionen gör att det virtuella instrumentet kan köras inuti LabVIEW-miljön utan ett separat byggsteg.
Vad används .vi-filer till?
Virtuella instrument låter ingenjörer utföra forskning och mätningar utan att fysiskt konstruera de analyserade systemen. Sedan LabVIEW introducerades 1986 - ursprungligen på Apple Macintosh - har VIs använts inom industri, akademi och avancerade FoU-projekt, inklusive arbete av NASA. VIs kan bäddas in i varandra som SubVIs, vilket möjliggör modulär och återanvändbar instrumentdesign.
Kan jag skapa egna .vi-filer?
LabVIEW-miljön tillåter visuellt skapande av nya eller modifiering av befintliga virtuella instrument. När du redigerar blockschemat eller frontpanelen kompilerar LabVIEW automatiskt om G-språkets källkod och sparar den uppdaterade kompilerade koden tillbaka i samma .vi-fil, så att instrumentet omedelbart är redo att köras.
Internt använder .vi-filer NI:s proprietära binärformat Resource Container (magic bytes 52 53 52 43 0D 0A - RSRC\r\n - vid filoffset 0), härlett från Mac OS Resource Fork som användes under LabVIEWs ursprungliga år enbart för Mac (1986-1992). Formatet är inte framåtkompatibelt: en .vi sparad i en nyare LabVIEW-version kan inte öppnas i en äldre. Relaterade format inkluderar .vit (VI-mall), .ctl (anpassad kontroll) och .lvproj (LabVIEW-projekt).
Säkerhet & trygghet
RISK: MEDIUMVI-filer kan innehålla kompilerad körbar kod som körs på värddatorn. En skadlig VI-fil kan läsa/skriva filer, kommunicera över nätverket eller styra hårdvara. Öppna endast VIs från pålitliga källor. NI-instrumentdrivrutiner från NI:s officiella Instrument Driver Network är säkra; tredjeparts-VIs bör granskas i LabVIEWs blockschema innan de körs.
Formatdetaljer
i ett nötskal- Unix vi editor återställningsfil - Vissa Unix-system använder .vi som återställnings-/växlingsfiler för textredigeraren vi, helt orelaterat till LabVIEW.
Program som öppnar VI-filer
Tekniska detaljer
djup specifikation| Binär signatur | 52 53 52 43 0D 0A («RSRC\r\n») vid filoffset 0 - Resource Container-header |
| Containerformat | NI Resource Container (proprietär; modellerad efter Mac OS Resource Fork) |
| Byteordning | Big-endian |
| Kodning | Binär |
| Komprimering | Ingen som standard; enskilda datablock kan använda zlib i LabVIEW 2021+ |
| Typisk filstorlek | 10 KB - 50 MB (beror på kompilerad kod, inbäddade SubVIs och ikondata) |
| Viktiga blocktyper | BDPW (blockschema), FPHP (frontpanel), VCTP (anslutningspanel), CONP (kompilerad kod), ICON (VI-ikon) |
| Containerversion | Resource Container v3 (nuvarande, sedan ca LabVIEW 8.x); v2 i tidigare versioner |
| Kompatibilitet mellan versioner | Inte framåtkompatibel - .vi sparad i en nyare LabVIEW-version kan inte öppnas i en äldre; Mass Compile krävs efter uppgradering |
| Lösenordsskydd | Tillgängligt via VI Properties för låsning av frontpanel och blockschema; inte kryptografisk kryptering |
| Integritetskontroll | CRC-baserade kontroller på resursblock; filen nekas vid laddning om den är korrupt |
| Stöd för SubVI | VIs kan bäddas in som SubVIs inuti andra VIs, vilket möjliggör modulär instrumentdesign |
| MIME-typ | application/x-labview-vi |
| OS-stöd | Windows, macOS, Linux |
| Släppt | 1986 (LabVIEW 1.0 for Mac) |
| Senaste version | Resource Container version 3 (as of LabVIEW 2021+) |
| Specifikation | labviewwiki.org |
VI-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om VI-filer.