A bundle can contain any number of
.rsrc
files, which are treated as bundle resources just like any other kind of file. It is possible to use the CFBundle API to get a CFURL to such a file, convert that to an FSRef, and then open it using the Resource Manager. There are, however, two special resource files that CFBundle will manage for you if you provide them. One is for non-localized resources, and it is called
executable name
.rsrc
, where
executable name
is the name of your main executable. This file is stored with the other nonlocalized resources, in the
Resources
directory. The other file is for localized resources, and it is called
Localized.rsrc
;. This file is stored in the appropriate
.lproj
directory, one version for each language or region. Note that the resources should be stored in the file's data fork, not the resource fork.
When an application is launched, Bundle Services automatically attempts to open these files so that your application's resources are always available. For other bundles--frameworks and loadable bundles--you must do this yourself using the CFBundle function provided specifically for this purpose.