Skip to content

File Associations Config Examples

daemon.devin edited this page Aug 30, 2025 · 1 revision

USAGE

Add sections [FileAssociation1], [ProtocolHandler1], [ContextMenu1] etc. to Launcher.ini

FileAssociation Keys:

Extension		-	File extension (e.g., .txt, .myfile)
ProgID			-	Program identifier (e.g., MyApp.Document)
Description		-	File type description
DefaultIcon		-	Path to icon file,index
OpenCommand		-	Command to open files (%1 = filepath)
EditCommand		-	Command to edit files (optional)
PrintCommand	-	Command to print files (optional)
IfExists		-	skip, backup, replace
Priority		-	high, normal, low (for conflicting associations)
MimeType		-	MIME type for web integration (optional)

ProtocolHandler Keys:

Protocol		-	Protocol name (e.g., myapp, mailto)
ProgID			-	Program identifier
Description		-	Protocol description
DefaultIcon		-	Path to icon file,index
OpenCommand		-	Command to handle protocol (%1 = full URL)
IfExists		-	skip, backup, replace

ContextMenu Keys:

Extension		-	File extension or * for all files
MenuText		-	Text to show in context menu
MenuCommand		-	Command to execute (%1 = filepath)
MenuIcon		-	Path to icon file,index (optional)
Position		-	top, middle, bottom
IfExists		-	skip, backup, replace
Condition		-	Registry condition to check (optional)

EXAMPLE

[FileAssociation1]
Extension=.myfile
ProgID=MyPortableApp.Document
Description=My Portable App Document
DefaultIcon=%PAL:AppDir%\App\myapp.exe,0
OpenCommand="%PAL:AppDir%\App\myapp.exe" "%1"
EditCommand="%PAL:AppDir%\App\myapp.exe" --edit "%1"
IfExists=backup
Priority=high
MimeType=application/x-myapp-document

Real-World Examples

Example 1: Graphics Editor Application

; Primary image format
[FileAssociation1]
Extension=.psd
ProgID=MyGraphicsApp.PhotoshopDocument
Description=MyGraphics Photoshop Document
DefaultIcon=%PAL:AppDir%\icons\psd.ico,0
OpenCommand="%PAL:AppDir%\MyGraphicsApp.exe" "%1"
EditCommand="%PAL:AppDir%\MyGraphicsApp.exe" --edit "%1"
IfExists=backup
Priority=high
MimeType=image/vnd.adobe.photoshop

; Custom project format
[FileAssociation2]
Extension=.mgp
ProgID=MyGraphicsApp.Project
Description=MyGraphics Project File
DefaultIcon=%PAL:AppDir%\icons\project.ico,0
OpenCommand="%PAL:AppDir%\MyGraphicsApp.exe" --project "%1"
PrintCommand="%PAL:AppDir%\MyGraphicsApp.exe" --print "%1"
IfExists=replace
Priority=high
MimeType=application/x-mygraphics-project

; Protocol handler for custom URLs
[ProtocolHandler1]
Protocol=mygraphics
ProgID=MyGraphicsApp.Protocol
Description=MyGraphics Protocol Handler
DefaultIcon=%PAL:AppDir%\MyGraphicsApp.exe,0
OpenCommand="%PAL:AppDir%\MyGraphicsApp.exe" --url "%1"
IfExists=replace

; Context menu for all images
[ContextMenu1]
Extension=.jpg,.png,.gif,.bmp
MenuText=Edit with MyGraphics
MenuCommand="%PAL:AppDir%\MyGraphicsApp.exe" --quick-edit "%1"
MenuIcon=%PAL:AppDir%\icons\edit.ico,0
Position=top
IfExists=replace

; Context menu for folders
[ContextMenu2]
Extension=*
MenuText=Open MyGraphics Project Here
MenuCommand="%PAL:AppDir%\MyGraphicsApp.exe" --new-project "%1"
MenuIcon=%PAL:AppDir%\icons\folder.ico,0
Position=middle
IfExists=backup

Example 2: Video Player Application

; Video file associations
[FileAssociation1]
Extension=.mp4
ProgID=MyVideoPlayer.MP4
Description=MP4 Video File
DefaultIcon=%PAL:AppDir%\icons\video.ico,0
OpenCommand="%PAL:AppDir%\MyVideoPlayer.exe" "%1"
IfExists=backup
Priority=normal
MimeType=video/mp4

[FileAssociation2]
Extension=.mkv
ProgID=MyVideoPlayer.MKV
Description=Matroska Video File
DefaultIcon=%PAL:AppDir%\icons\video.ico,0
OpenCommand="%PAL:AppDir%\MyVideoPlayer.exe" "%1"
IfExists=backup
Priority=high
MimeType=video/x-matroska

; Playlist format
[FileAssociation3]
Extension=.mvpl
ProgID=MyVideoPlayer.Playlist
Description=MyVideo Playlist
DefaultIcon=%PAL:AppDir%\icons\playlist.ico,0
OpenCommand="%PAL:AppDir%\MyVideoPlayer.exe" --playlist "%1"
IfExists=replace
Priority=high

; Streaming protocol
[ProtocolHandler1]
Protocol=myvideo
ProgID=MyVideoPlayer.Stream
Description=MyVideo Streaming Protocol
OpenCommand="%PAL:AppDir%\MyVideoPlayer.exe" --stream "%1"
IfExists=replace

; Context menu for video files
[ContextMenu1]
Extension=.mp4,.avi,.mkv,.mov
MenuText=Play with MyVideoPlayer
MenuCommand="%PAL:AppDir%\MyVideoPlayer.exe" --play "%1"
MenuIcon=%PAL:AppDir%\icons\play.ico,0
Position=top
IfExists=replace

Clone this wiki locally