[Registry] #pragma option -e- #define protected Root: HKA; Subkey: "Software\Classes\Applications\pika-{#MAJOR}.{#MINOR}.exe"; Flags: uninsdeletekey Root: HKA; Subkey: "Software\Classes\Applications\pika-{#MAJOR}.{#MINOR}.exe"; ValueType: string; ValueName: "FriendlyAppName"; ValueData: "PIKA" Root: HKA; Subkey: "Software\Classes\Applications\pika-{#MAJOR}.{#MINOR}.exe\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\bin\pika-{#MAJOR}.{#MINOR}.exe,1" Root: HKA; Subkey: "Software\Classes\Applications\pika-{#MAJOR}.{#MINOR}.exe\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\bin\pika-{#MAJOR}.{#MINOR}.exe"" ""%1""" Root: HKA; Subkey: "Software\PIKA {#MAJOR}.{#MINOR}"; Flags: uninsdeletekey Root: HKA; Subkey: "Software\PIKA {#MAJOR}.{#MINOR}\Capabilities"; ValueType: string; ValueName: "ApplicationName"; ValueData: "PIKA" Root: HKA; Subkey: "Software\PIKA {#MAJOR}.{#MINOR}\Capabilities"; ValueType: string; ValueName: "ApplicationIcon"; ValueData: "{app}\bin\pika-{#MAJOR}.{#MINOR}.exe,0" Root: HKA; Subkey: "Software\PIKA {#MAJOR}.{#MINOR}\Capabilities"; ValueType: string; ValueName: "ApplicationDescription"; ValueData: "PIKA is a free raster graphics editor used for image retouching and editing, free-form drawing, converting between different image formats, and more specialized tasks." Root: HKA; Subkey: "Software\RegisteredApplications"; ValueType: string; ValueName: "PIKA {#MAJOR}.{#MINOR}"; ValueData: "Software\PIKA {#MAJOR}.{#MINOR}\Capabilities"; Flags: uninsdeletevalue #define FileHandle #define FileLine #define Line=0 #sub ProcessAssociation #if !defined(Finished) #if Copy(FileLine,1,1)=="#" || FileLine=="" //skip comments and empty lines #else #pragma message "Processing associations.list: " + FileLine ; Root: HKA; Subkey: "Software\Classes\.{#FileLine}\OpenWithProgids"; ValueType: string; ValueName: "PIKA2.{#FileLine}"; ValueData: ""; Flags: uninsdeletevalue Root: HKA; Subkey: "Software\Classes\PIKA2.{#FileLine}"; ValueType: string; ValueName: ""; ValueData: "PIKA {#ICON_VERSION}"; Flags: uninsdeletekey Root: HKA; Subkey: "Software\Classes\PIKA2.{#FileLine}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\bin\pika-{#MAJOR}.{#MINOR}.exe,1" Root: HKA; Subkey: "Software\Classes\PIKA2.{#FileLine}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\bin\pika-{#MAJOR}.{#MINOR}.exe"" ""%1""" Root: HKA; Subkey: "Software\Classes\Applications\pika-{#MAJOR}.{#MINOR}.exe\SupportedTypes"; ValueType: string; ValueName: ".{#FileLine}"; ValueData: "" Root: HKA; Subkey: "Software\PIKA {#MAJOR}.{#MINOR}\Capabilities\FileAssociations"; ValueType: string; ValueName: ".{#FileLine}"; ValueData: "PIKA2.{#FileLine}" #endif #endif #endsub #for {FileHandle = FileOpen(AddBackslash(SourcePath)+"associations.list"); \ FileHandle && !FileEof(FileHandle); FileLine = FileRead(FileHandle)} \ ProcessAssociation #if FileHandle #expr FileClose(FileHandle) #endif ;special case for .ico files Root: HKA; Subkey: "Software\Classes\.ico\OpenWithProgids"; ValueType: string; ValueName: "PIKA2.ico"; ValueData: ""; Flags: uninsdeletevalue Root: HKA; Subkey: "Software\Classes\PIKA2.ico"; ValueType: string; ValueName: ""; ValueData: "PIKA {#ICON_VERSION}"; Flags: uninsdeletekey Root: HKA; Subkey: "Software\Classes\PIKA2.ico\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "%1" Root: HKA; Subkey: "Software\Classes\PIKA2.ico\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\bin\pika-{#MAJOR}.{#MINOR}.exe"" ""%1""" Root: HKA; Subkey: "Software\Classes\Applications\pika-{#MAJOR}.{#MINOR}.exe\SupportedTypes"; ValueType: string; ValueName: ".ico"; ValueData: "" Root: HKA; Subkey: "Software\PIKA {#MAJOR}.{#MINOR}\Capabilities\FileAssociations"; ValueType: string; ValueName: ".ico"; ValueData: "PIKA2.{#FileLine}"