Vad är filformatet PRO?
.pro är en generisk filändelse som används av många olika applikationer. .pro-filer kan grovt delas in i två typer - de som lagrar profilinformation och de som innehåller projektkonfigurationsdata. En profilfil kan betraktas som en typ av konfigurationsfil, eftersom den lagrar data relaterad till användar- eller systeminställningar; en projektfil innehåller däremot inställningar eller konfigurationer specifika för en viss applikationsmiljö.
Den mest kända användningen är Qt qmake-projektfil - ett skript i ren text som definierar SOURCES, HEADERS, TARGET och TEMPLATE via nyckel = värde-tilldelningar, som qmake konverterar till plattformsspecifika Makefiles. Andra program som använder filändelsen .pro inkluderar PTC Creo (monteringsdata), KiCad (PCB-projekt före version 6) och IBM Cognos TM1. Från Qt 6 och framåt är .qbs och CMake de föredragna byggsystemen.
Givet en slumpmässig .pro-fil är det svårt att avgöra vilken applikation den tillhör. De flesta .pro-filer sparas i vanligt textformat, så det är möjligt att öppna en sådan fil och leta efter igenkännbara nyckelord - som QT +=, SOURCES += eller TEMPLATE - som ledtrådar om dess ursprung och syfte. Att öppna okända filer är potentiellt riskabelt ur ett säkerhetsperspektiv, så försiktighet rekommenderas.
Säkerhet & trygghet
RISK: LOWDe flesta .pro-filer är ren text (projektkonfigurationer, källkod, inställningar) och innehåller ingen körbar kod, så det är säkert att läsa dem. Den verkliga risken är felidentifiering, inte skadlig kod: eftersom filändelsen är generisk kan ett dubbelklick starta fel program eller inget alls - öppna den i en textredigerare först för att se vad det är. Som alltid, var försiktig med filer vars verkliga natur är oklar eller som anlänt oväntat, och kör inte byggskript från okända projekt utan att granska dem.
Formatdetaljer
i ett nötskal- PTC Pro/ENGINEER (nu Creo) del-/datafil - Äldre Pro/ENGINEER kunde använda .pro för konfigurations-/delrelaterade filer; öppnas i PTC Creo. Detta är det program som källan angav som «rekommenderat» för .pro.
- KiCad-projektfil (före v6) / Prolog-källkod - KiCad lagrade projekt som .pro före v6 (nu .kicad_pro JSON); Prolog-källkod använder också .pro/.pl, öppnas av en Prolog-tolk.
- TurboFloorPlan / IBM Cognos TM1-process - TurboFloorPlan sparar projekt som .pro; Cognos TM1 använder .pro för TurboIntegrator-processkript - var och en öppnas endast i sin egen app.
Program som öppnar PRO-filer
Tekniska detaljer
djup specifikation| Filkodning | Vanlig UTF-8 eller ASCII-text; inget binärt huvud eller magic bytes |
| MIME-typ | text/plain |
| Primär syntax | variabeltilldelningar med nyckel = värde och nyckel += värde; rader som börjar med # är kommentarer |
| Kärnvariabler | SOURCES, HEADERS, FORMS, TARGET, TEMPLATE, CONFIG, QT |
| TEMPLATE-värden | app (körbar fil), lib (delat eller statiskt bibliotek), subdirs (rekursiva underprojekt) |
| Byggverktyg | qmake - läser .pro-filen och skapar Makefiles eller IDE-projektfiler |
| Plattformsspecifika block | Villkorliga block som win32 { }, macx { }, unix { } tillämpar plattformsspecifika inställningar |
| Variabelexpansion | $$VAR-syntax refererar till andra qmake-variabler (t.ex. $$TARGET, $$PWD) |
| Inkluderingsmekanism | .pri-filer (Qt-projektets inkluderingskod) hämtas in med include(path.pri) |
| Qt-modulberoenden | QT += widgets network sql lägger till Qt-moduler i bygget |
| Efterföljande format | Qt Build System (.qbs) och CMake (CMakeLists.txt) rekommenderas från Qt 6 och framåt |
| Andra användningsområden | Används även av PTC Creo (monteringsdata), KiCad v5 och tidigare (PCB-projekt), IBM Cognos TM1, Prolog-miljöer |
| Genererad utdata | Windows: Makefile (MinGW) eller .vcxproj (MSVC); macOS: Makefile eller .xcodeproj; Linux: Makefile |
| Stöd för flera plattformar | En enda .pro-fil kan rikta sig till Windows, macOS och Linux från samma källkodsträd |
| Släppt | Qt / qmake, early 2000s |
| Öppen standard | Ja · royaltyfri |
| Specifikation | doc.qt.io |
PRO-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om PRO-filer.