Programmatiska identifierare
Shell använder en undernyckel för programmatisk identifierare (ProgID) för att associera en filtyp med ett program och för att kontrollera associationens beteende. De ProgID-poster som används för filassociationer finns under HKEY_CLASSES_ROOT i registret.
Det här avsnittet är ordnat på följande sätt:
- programmatiska identifierarelement som används av filassociationer
- Med versionshanterade programmatiska identifierare
- Relaterade ämnen
Mer information finns i Så här registrerar du en filtyp för ett nytt program
Programmatiska identifierarelement som används av filassociationer
Rätt format för ett ProgID-nyckelnamn är [leverantör eller program]. [Komponent]. [Version], avgränsad med punkter och utan blanksteg, som i Word.Document.6. Den version delen är valfri men rekommenderas starkt. Mer information finns i Using Versioned Programmatic Identifiers.
En ProgID-undernyckel bör innehålla följande element. Observera att vissa strängdata i den här nyckeln kräver specifik formatering.
Element | Beskrivning |
---|---|
(standard) | Ange standardposten för ProgID-undernyckeln till ett eget namn för det ProgID som är lämpligt att visa för användaren. Användningen av den här posten för att lagra det egna namnet är inaktuell av posten FriendlyTypeName i system som kör Windows 2000 eller senare. Du bör dock ange det här värdet för bakåtkompatibilitet. |
AllowSilentDefaultTakeOver (introducerades i Windows 8) | Ange den här valfria posten för att signalera att Windows bör ignorera detta ProgID när du fastställer en standardhanterare för en offentlig filtyp. Oavsett om det här värdet har angetts fortsätter ProgID att visas på snabbmenyn och dialogrutan OpenWith. Det här är ett REG_NONE värde. |
AppUserModelID (introducerades i Windows 7) | Ange den här valfria posten till programmets explicita appanvändarmodell-ID (AppUserModelID) om programmet använder ett explicit AppUserModelID och antingen använder systemets automatiskt genererade Senaste eller Frekvent snabblistor eller tillhandahåller en anpassad hopplista. Om ett program använder ett explicit AppUserModelID och inte anger det här värdet visas inte objekt i programmets snabblistor. Det här är en REG_SZ sträng. Mer information finns i AppUserModelIDs (AppUserModelIDs). |
EditFlags | Ange den här valfria posten med flaggor från FILETYPEATTRIBUTEFLAGS uppräkning. Posten EditFlags styr vissa aspekter av Shells hantering av de filtyper som är länkade till detta ProgID. Du kan också använda posten EditFlags för att begränsa hur mycket användaren kan ändra vissa aspekter av dessa filtyper med hjälp av en fils egenskapsblad.
FILETYPEATTRIBUTEFLAGS värden som används för EditFlags är binära värden som utformats så att du kan kombinera flera attribut till ett enda värde i en bitvis OR-åtgärd. Det här är ett REG_DWORD- eller REG_BINARY värde. |
FriendlyTypeName | Ställ in den här posten på ett eget namn för ProgID, som är lämpligt att visa för användaren. För konsekvens bör den här strängen innehålla samma data som standardposten för den här ProgID-nyckeln. Den här posten kan vara antingen en REG_SZ eller REG_EXPAND_SZ sträng, men den måste formateras som en indirekt sträng (ett fullständigt kvalificerat filnamn och resursvärde föregås av @-symbolen), till exempel @%SystemRoot%\shell32.dll,-154. |
InfoTip- | Ange den här posten till ett kort hjälpmeddelande som Gränssnittet visar för detta ProgID. InfoTip-posten visas i en dialogruta med muspekaren. Det här värdet kan vara antingen en REG_SZ eller REG_EXPAND_SZ sträng, men som FriendlyTypeName måste det formateras som en indirekt sträng. |
CurVer | Ange posten (standard) för den här undernyckeln till den senaste versionen av detta ProgID. Obs! Om du inte har programversioner sida vid sida, d.v.s. flera versioner installerade på samma system, bör du undvika att använda CurVer-. |
DefaultIcon. | Ange posten (standard) för den här undernyckeln till standardikonen som du vill visa för filtyper som är associerade med detta ProgID. Det här värdet kan vara antingen en REG_SZ eller REG_EXPAND_SZ sträng, men det måste anges som ett fullständigt kvalificerat filnamn med dess dirigeringsresursvärde, till exempel %SystemRoot%\shell32.dll,-154. |
Följande registernyckelexempel illustrerar en progID-nyckelnod för filassociation:
HKEY_CLASSES_ROOT
Vendor.App.1
(Default) = My Friendly Name
AllowSilentDefaultTakeOver
AppUserModelID = Vendor.Application
EditFlags = 0x00000001
FriendlyTypeName = @%SystemRoot%\shell32.dll,-154
InfoTip = @%SystemRoot%\shell32.dll,-54
CurVer
(Default) = Vendor.App.1
DefaultIcon
(Default) = %SystemRoot%\shell32.dll,-1
Använda versionshanterade programmatiska identifierare
Ett versionshanterat ProgID är ett vars version anges i dess namn. Du gör vanligtvis detta genom att lägga till en punkt och versionsnumret i namnet. Till exempel:
- Word.Document.6
- Word.Document.8
Dessa är versionshanterade ProgID:er, med version 6 respektive 8. Om du har ett program sida vid sida, dvs. ett program som har stöd för flera versioner av ditt program installerat samtidigt, använder du CurVer och Version Independent ProgIDs. Annars bör CurVer- och versionsoberoende prog-ID:er undvikas eftersom de leder till ineffektivitet.
Relaterade ämnen