MacOSX - File extension associate with application - Programmatically

后端 未结 4 1980
鱼传尺愫
鱼传尺愫 2020-11-28 11:28

I\'m trying to get my program to automatically associate certain file extensions to be opened by it but I\'m not sure how to do that in MacOSX. I\'m not asking how to assoc

4条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-11-28 11:49

    To register a new file extension with an application use the following defaults command.
    Replace PUT_FILE_EXTENSION_HERE_WITHOUT_PERIOD with the file extension i.e. txt.
    Replace org.category.program with the com/org name of your program i.e. com.apple.itunes.

    $ defaults write com.apple.LaunchServices LSHandlers -array-add \
    "LSHandlerContentTag
    PUT_FILE_EXTENSION_HERE_WITHOUT_PERIODLSHandlerContentTagClass
    public.filename-extensionLSHandlerRoleAll
    org.category.program"
    


    Once you have added the file extension to the launch services, you must restart the launch services deamon so it will re-read the configuration file.

    You can either run the command below to restart launch services, or simply restart your computer. Loging in/loging out also might do it but I haven't tried.

    $ /System/Library/Frameworks/CoreServices.framework/Versions/A/Framework/LaunchServices.framework/Versions/A/Support/lsregister -kill -domain local -domain system -domain user
    

提交回复
热议问题