The easiest way to add a resource to an application - without any other tools - is to go to "Project" > "Project options" > "Project options" > "Resources"; click "Add", switch the file type filter to "All files (*.*)"; select the file to be added > "Open". The file is now listed in the "Resources" windows. Note the name in the "Resource" column - this is the name which you must use to open the resource in the application. To the left of it, you see "RCDATA" in the "Type" column; this is the type of the resource which you usually must specifiy when you load the resource (you must preceed the type name with an "RT_").
If you follow this, your "Bell.wav" will be in the resources as BELL of type RCDATA. In order to open it in your application as a resource stream you must write
resStream := TResourceStream.Create(HINSTANCE, 'BELL', RT_RCDATA);
A little disadvantage of this method is that the files added to the resources must be available whenever the application is compiled. The "lazres" utility, on the other hand, allows you to create resource files independent of compilation.
or, also within this tool called Lazarus, create a new file, add
LANGUAGE 0,0
#define RCDATA 10
Bell RCDATA "Bell.wav"
save file as "sounds.rc" in project folder.
copy bell.wav into project folder.
inside code use "{$R 'sounds.rc'}" near under "implementation"
in theory its the same as adding by project options, since its just text its for me more comfortable.
requires a full fpc or lazarus installation, wherever the binary resource compiler is deployed with.