A Components elem adja meg a beépülő modul egy verzióját alkotó összetevőket.
Egy beépülő modult több Components elem határozhat meg, és minden Components elem egy vagy több összetevőt azonosíthat. A Components elemek platform- és termékinformációit a RuntimeRequirements elem határozza meg.
Ha a Components elemmel meghatározott összes összetevő ugyanarra a platformra vonatkozik, nem szükséges hozzáadni a RuntimeRequirements elemet minden egyes ComponentEntry elemhez.
A RuntimeRequirements elem mellett a Components elem egy vagy több elemet tartalmazhat a következők közül
A következő leírja a Components elem és az általa tartalmazott elemek kapcsolatát.
<Components>
<RuntimeRequirements ... />
<RegistryEntries>
<RegistryEntry ... />
</RegistryEntries>
<SystemVariables>
<SystemVariable ... />
</SystemVariables>
<EnvironmentVariables>
<EnvironmentVariable ... />
</EnvironmentVariables>
<ComponentEntry ... >
<RuntimeRequirements ... />
<AssemblyMappings>
<AssemblyMapping ... />
<AssemblyMappingFolder ... />
</AssemblyMappings>
<Commands ...>
<Command ... />
</Commands>
</ComponentEntry>
<ComponentEntry ... />
</Components>
A ComponentEntry elem szükséges, és ezzel adhatók meg a Components elemben lévő összetevők részletes információi.
Tetszőleges számú ComponentEntry elem adható meg. Az összetevőtípusok a következő fájlformátumúak lehetnek:
| Fájlformátum | Windows | macOS | ||
|---|---|---|---|---|
| AutoCAD | AutoCAD LT | AutoCAD | AutoCAD LT | |
| AutoLISP-forráskód (LSP) | ✓ | ✓ | ✓ | – |
| Gyors betöltésű AutoLISP (FAS) | ✓ | ✓ | ✓ | – |
| Lefordított Visual LISP-projekt (VLX) | ✓ | ✓ | – | – |
| ObjectARX (ARX/CRX) | ✓ | – | ✓ | – |
| ObjectDBX (DBX) | ✓ | – | ✓ | – |
| Extensible Application Markup Language (XAML) | ✓ | ✓ | – | – |
| JavaScript (JS) | ✓ | – | – | – |
| Kezelt vagy vegyes módú .NET-összeállítás (DLL) | ✓ | – | – | – |
| Részleges testreszabás (CUI/CUIx) | ✓ | ✓ | – | – |
| Eszközpaletta (ATC) | ✓ | ✓ | – | – |
| VBA-projekt (DVB) | ✓ | – | – | – |
A ComponentEntry elemek Commands elemet is tartalmazhatnak, ha a LoadReasons attribútum értéke LoadOnCommandInvocation.
A ComponentEntry elemekhez a következő attribútumok tartozhatnak:
|
Attribútum |
Leírás |
|---|---|
|
AppName |
Nem kötelező az AutoLISP esetén, szükséges az ObjectARX és .NET esetén. Az összetevő neve, azonos az ObjectARX API AcadAppInfo osztály Appname attribútumával. |
|
AppDescription |
Összetevő leírása, azonos az ObjectARX API AcadAppInfo osztály AppDescription attribútumával. |
|
AppType |
Összetevő típusa, felülírja a ModuleName attribútumban megadott fájlkiterjesztésből származó típust. Az összetevőtípus a következők egyike lehet:
|
|
ModuleName |
Az összetevő relatív útvonala a csomagon belül. Azonos az ObjectARX API AcadAppInfo osztály ModuleName attribútumával. Az összetevő típusát a fájl kiterjesztése határozza meg:
Ha az alkalmazás több nyelvet kezel, akkor egy adott összetevő különböző verzióit is megadhatja, ha a ModuleName attribútumot egy helykóddal kombinálja. A támogatott helykódok teljes listája a következő helyen található: Támogatott helykódok – összefoglalás. Megjegyzés: Az elérési útvonalak nem „\”, hanem „/” karaktereket tartalmaznak, és a gyökér .bundle mappához viszonyítva értendők.
|
|
PerDocument |
Csak az AutoLISP esetén - Igaz érték esetén az AutoLISP-fájl dokumentumonként egyszer töltődik be. Az alapértelmezett érték az Igaz. |
|
LoadReasons |
Több érték is megadható – Meghatározza az összetevő betöltési viselkedésének paramétereit a LoadReasons attribútummal, a LoadOnCommandInvocation paraméter kivételével. Alapértelmezés szerint a LoadOnAutoCADStartup, a LoadOnAppearance és a LoadOnProxy engedélyezve van (Igaz értékre van állítva), ha a LoadReasons nincs megadva. Ha a paramétereket le kell tiltani (Hamis értékre állítani), akkor a paraméterek Hamis értékre állítása mellett a LoadReasons elemet is meg kell adni. A LoadOnCommandInvocation alapértelmezés szerint le van tiltva, és az engedélyezése letiltja a LoadOnAutoCADStartup és a LoadOnAppearance elemeket, hacsak nem engedélyezi őket külön. Ha egy vagy több Command elem is definiálva van a Components elem részeként, a LoadOnCommandInvocation implicit módon engedélyezett. Az AcadAppInfo LoadReasons elem további részleteit lásd az ObjectARX referencia-útmutatójában. Érvényes paraméterértékek:
A következő paraméterek érhetők el:
|
|
XamlType |
Az XAML típusa esetében jelenleg az egyetlen támogatott érték a „ContextualTabRule”, és kötelező megadni, amikor a program egy XAML-fájlt rendel a ModuleName attribútumhoz. Az XAML-fájlt használó alkalmazásfájlt azután a ComponentEntry elem után kell megjeleníteni, amely az XAML-fájlt tartalmazza. |
A Commands elem nem kötelező, kivéve, ha a LoadOnCommandInvocation paraméter engedélyezve van a LoadReasons attribútumon. Azt adja meg, hogy mely parancsokat kell regisztrálni a LoadOnCommandInvocation paraméterhez.
Tetszőleges számú Command elem adható meg.
A Commands elemekhez a következő attribútumok tartozhatnak:
|
Attribútum |
Leírás |
|---|---|
|
GroupName |
A kapcsolódó parancsok rendezéséhez használt név. |
Az egyes parancsok globális és helyi nevét adja meg.
A Command elemekhez a következő attribútumok tartozhatnak:
|
Attribútum |
Leírás |
|---|---|
|
Global |
Globális parancsnév. |
|
Local |
Helyi parancsnév. A parancsok több nyelvhez is meghatározhatók a Helyi attribútum és egy helykód kombinálásával. A támogatott helykódok teljes listája a következő helyen található: Támogatott helykódok – összefoglalás. |
|
HelpTopic |
Az F1 billentyű lenyomásakor megnyíló súgótémakör, ha a parancs aktív. Megjegyzés: A súgótémakör megjelenítéséhez a súgófájlt hozzá kell rendelni a beépülő modulhoz. A súgófájl beépülő modulhoz hozzárendelt helye az ApplicationPackage elem alatti HelpFile attribútummal van megadva.
|
|
StartupCommand |
Végrehajtja a parancsot indításnál, ha az érték Igaz. |
A következő példában két, az ADSKCMDS nevű csoportban definiált parancs hozzáadása látható:
<Commands GroupName="ADSKCMDS">
<Command Global="HELLOWORLD" Local="ADSKHELLOWORLD"/>
<Command Global="DRAWLINE" Local="ADSKDRAWLINE"/>
</Commands>
Az AssemblyMappings elem használata nem kötelező, és egy vagy több AssemblyMapping vagy AssemblyMappingFolder elemet tartalmazhat. Az AssemblyMapping és az AssemblyMappingFolder elemek olyan összeállításfájlok és mappaútvonalak belső listákhoz való hozzáadására szolgálnak, amelyeket az AutoCAD a termék telepítési mappájában nem található összeállítások feloldására használ.
|
Attribútum |
Leírás |
|---|---|
|
Name |
Annak a ComponentEntry elemnek a neve, amelyhez az összeállítás társítva van, és amellyel együtt a programnak be kell töltenie. |
|
Path |
Az összeállítás relatív útvonala a csomagon belül. |
|
Attribútum |
Leírás |
|---|---|
|
Path |
Az összeállítások relatív útvonala a csomagon belüli. |
A következő példában két olyan mappa hozzáadása látható, amelyek összetevő által használt összeállításokat tartalmaznak:
<AssemblyMappings>
<AssemblyMappingFolder Path="./Content/Assemblies" />
<AssemblyMappingFolder Path="./Content/MoreAssemblies" />
</AssemblyMappings>
A RegistryEntries elem használata nem kötelező, és egy vagy több RegistryEntry elemet tartalmazhat. A RegistryEntry elem tartalmazza a beállításjegyzékbeli bejegyzés definícióját, amelyet a beépülő modul hoz létre vagy módosít. A beállításjegyzékbeli bejegyzéseket a Windows-beállításjegyzék vagy macOS rendszeren egy tulajdonságlista-fájl (PLIST) tartalmazza.
|
Attribútum |
Leírás |
|---|---|
|
Name |
A létrehozandó vagy módosítandó beállításjegyzékbeli bejegyzés neve. |
|
Value |
A beállításjegyzékbeli bejegyzéshez hozzárendelendő érték. Az érték egyet tartalmazhat a következő lehetséges operátor előtagok közül: +, -, & és |. További információkért lásd a „Változó értékű operátor előtagok” szakaszt. Megjegyzés: Az operátor előtag nem marad meg, amikor az értéket a program a beállításjegyzékbeli bejegyzésre alkalmazza.
|
|
Type |
A beállításjegyzékbeli bejegyzéshez hozzárendelendő adattípus. A létező beállításjegyzékbeli bejegyzések módosításakor nem kötelező. A lehetséges értékek:
Ha a beállításjegyzékbeli bejegyzés értékéhez operátor előtagot is használ, akkor adja meg a megfelelő adattípust. Ha nem a megfelelő adattípust használja, akkor a műveletet karakterlánc műveletként hajtja végre a program. |
|
Flags |
Nem kötelező jelzők létrehozása és módosítása. Több jelző is megadható, használjon pipa jelet a jelzők elválasztásához. A következő jelzők támogatottak:
Megjegyzés: Az Open és az OpenOnce jelzőt kell használni a beállításjegyzékbeli bejegyzés értékének módosításához.
|
A következő példa létrehozza a MYREGKEY rendszerleíró kulcsot, és hozzáadja a STRING és NUMBER értékeket:
<RegistryEntries>
<RegistryEntry
Key="MYREGKEY"
Name="STRING"
Value="Example"
Type="REG_SZ"
/>
<RegistryEntry
Key="MYREGKEY"
Name="NUMBER"
Value="123"
Type="REG_DWORD"
/>
</RegistryEntries>
A SystemVariables elem használata nem kötelező, és egy vagy több SystemVariables elemet tartalmazhat. A SystemVariable elem tartalmazza a beépülő modul által létrehozandó vagy módosítandó rendszerváltozó definícióját.
|
Attribútum |
Leírás |
|---|---|
|
Name |
A létrehozandó vagy módosítandó rendszerváltozó neve. |
|
Value |
A változóhoz hozzárendelendő érték. Az érték egyet tartalmazhat a következő lehetséges operátor előtagok közül: +, -, & és |. További információkért lásd a „Változó értékű operátor előtagok” szakaszt. Megjegyzés: Az operátor előtag nem marad meg, amikor az értéket a program a változóra alkalmazza.
|
|
PrimaryType |
A változóhoz hozzárendelendő adattípus. Egy létező rendszerváltozó módosításakor nem kötelező. A lehetséges értékek:
Ha a változó értékének részeként operátor előtagot is használ, akkor adja meg a megfelelő adattípust. Ha nem a megfelelő adattípust használja, akkor a műveletet karakterlánc műveletként hajtja végre a program. |
|
StorageType |
A változó értékének tárhelye, ha a program megőrzi azt. Egy létező rendszerváltozó módosításakor nem kötelező. A lehetséges értékek:
|
|
Owner |
Nem kötelező AcRX-szolgáltatásnév. A rendszerváltozó írásvédetté tételére használható, amelyet csak egy, a szolgáltatás nevét az acrxRegisterService() használatával regisztráló alkalmazás módosíthat. |
|
Flags |
Nem kötelező jelzők létrehozása és módosítása. Több jelző is megadható, használjon pipa jelet a jelzők elválasztásához. A következő jelzők támogatottak:
Megjegyzés: Az Open és az OpenOnce jelzőt kell használni a változó értékének módosításához.
|
A következő példa a MYVARIABLE nevű változót hozza létre:
<SystemVariable
Name="MYVARIABLE"
PrimaryType="String"
StorageType="User"
Value="Example"
Owner=""
Flags="Create|DotIsEmpty|SpacesAllowed"
/>
A következő példa megváltoztatja a CURSORSIZE rendszerváltozó értékét 100-ra a beépített modul első betöltésekor:
<SystemVariable
Name="CURSORSIZE"
Value="100"
Flags="OpenOnce"
/>
Az EnvironmentVariables elem használata nem kötelező, és egy vagy több EnvironmentVariable elemet tartalmazhat. Az EnvironmentVariable elem tartalmazza a beépülő modul által létrehozandó vagy módosítandó környezeti változó definícióját. A környezeti változókat a Windows-beállításjegyzék vagy macOS rendszeren egy tulajdonságlista-fájl (PLIST) tartalmazza.
|
Attribútum |
Leírás |
|---|---|
|
Name |
A létrehozandó vagy módosítandó környezeti változó neve. |
|
Value |
A változóhoz hozzárendelendő érték. Az érték egyet tartalmazhat a következő lehetséges operátor előtagok közül: +, -, & és |. További információkért lásd a „Változó értékű operátor előtagok” szakaszt. Megjegyzés: Az operátor előtag nem marad meg, amikor az értéket a program a változóra alkalmazza.
|
|
Type |
Nem kötelező adattípus, amelyet az Érték jelöl. A lehetséges értékek:
Ha a változó értékének részeként operátor előtagot is használ, akkor adja meg a megfelelő adattípust. Ha nem a megfelelő adattípust használja, akkor a műveletet karakterlánc műveletként hajtja végre a program. |
|
Flags |
Nem kötelező jelzők létrehozása és módosítása. Több jelző is megadható, használjon pipa jelet a jelzők elválasztásához. A következő jelzők támogatottak:
Megjegyzés: Az Open és az OpenOnce jelzőt kell használni a változó értékének módosításához.
|
Az alábbiakban a MYNUMVAR és a MYSTRVAR nevű környezeti változók létrehozására talál példát:
<EnvironmentVariables>
<EnvironmentVariable
Name="MYNUMVAR"
Value="123"
/>
<EnvironmentVariable
Name="MYSTRVAR"
Value="Example"
/>
</EnvironmentVariables>
Az operátor előtagok a változók aktuális értékét módosítják, ha a beépülő modul be van töltve. A RegistryEntry, SystemVariable vagy EnvironmentVariable elem Érték attribútumához a következő táblázatban megadott operátor előtagok egyikét adhatja hozzá.
|
Előtag |
Leírás |
|---|---|
|
+ (plusz jel) |
Hozzáad vagy hozzáfűz egy értéket egy meglévő változó értékéhez. Int16, Int32, Real: Hozzáadja az Értéket egy meglévő változó értékéhez. String: Hozzáfűzi az Értéket egy meglévő változó értékéhez. |
|
- (kötőjel) |
Kivonja vagy eltávolítja az értéket egy meglévő változó értékéből. Int16, Int32, Real: Kivonja az Értéket egy meglévő változó értékéből. String: Eltávolítja az Értéket egy meglévő változó értékéből. |
|
& (és) |
Bitenként elvégzett ÉS művelet a változó meglévő értékével, csak numerikus értékek esetén támogatott. |
|
| (pipa jel) |
Bitenként elvégzett VAGY művelet a változó meglévő értékével, csak numerikus értékek esetén támogatott. |
A következő mindig engedélyezi az END, MID, CEN, NOD, QU és INT futó tárgyrasztereket, és változatlanul hagyja az egyéb tárgyraszter-beállításokat:
<SystemVariable
Name="OSMODE"
Value="|63"
Flags="Open"
/>