Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License
"Eclipse Public License v1.0" which accompanies this distribution,
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
Nokia Corporation - initial contribution.
Contributors:
-->
<!DOCTYPE concept
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-5280EC0E-1A1F-5777-ACB1-CF4791EE2147" xml:lang="en"><title>start
resource</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p> <codeph>start resource</codeph> <varname>source-file</varname> </p>
<p>[<codeph>target</codeph> <varname>target-file-name</varname>] </p>
<p>[<codeph>targetpath</codeph> <varname>targetpath</varname>] </p>
<p>[<codeph>header</codeph> | <codeph>headeronly</codeph>] </p>
<p>[<codeph>lang</codeph> <varname>languages</varname>] </p>
<p>[<codeph>uid</codeph> <varname>uid-value-1</varname> [<varname>uid-value-2</varname>]
] </p>
<p> <codeph>end</codeph> </p>
<p>A <codeph>start resource</codeph> section specifies how a resource file
should be compiled. </p>
<p> <varname>source-file</varname> specifies the resource source (<filepath>.rss</filepath>)
file. The file should be in the current <xref href="GUID-565074B2-53E2-54CD-A06B-7E044E66EBE8.dita">sourcepath</xref> directory,
or specified relatively to that directory. </p>
<p>The optional <codeph>target</codeph> <varname>target-file</varname> specifies
the name of the compiled resource file. The file extension part of the name
does not need to be specified, as this will be automatically supplied. By
default, the target has the same name as the source file. </p>
<p>The optional <codeph>targetpath</codeph> <varname>targetpath</varname> allows
you to specify the location of the compiled file on the <filepath>z:</filepath> drive
(or the emulated <filepath>Z:</filepath> drive). By default, the target file
is built into the same directory as the project's executable.</p>
<note> In Symbian OS v9.0 and later, platform security requires resources
to be placed into the correct path, either <filepath>\resource</filepath> for
resources that are public but read-only, or <filepath>\private\12345678</filepath>,
for resources that are private to the application with application Secure_Id <codeph>12345678</codeph>.
This means that this keyword will almost always be used.</note>
<p>The optional <codeph>header</codeph> keyword causes a resource header (<filepath>.rsg</filepath>)
file to be created in <filepath>epoc32\include\</filepath> along with the
resource (<filepath>.rsc</filepath>) file. The optional <codeph>headeronly</codeph> keyword
causes only the resource header (<filepath>.rsg</filepath>) file to be created
in <filepath>epoc32\include\</filepath>. The resource header defines identifiers
for the index positions of the structures in the resource file. </p>
<p>The optional <codeph>lang</codeph> keyword specifies language codes for
the resource. This overrides any language settings made for the mmp file using
the <xref href="GUID-7C4A8920-359F-5328-8D28-2AFBA25A6A9E.dita">lang</xref> keyword.
A language code is two-digit code, and is used to complete the extension of
the built resource file: e.g. if the language code is 01, then the extension
is <filepath>.r01</filepath>. The default language code is <codeph>sc</codeph>.
The resource file is compiled multiple times, once for each language specified. </p>
<p>The optional <codeph>uid</codeph> keyword specifies the values for the
second, and optionally, the third UID of the resource file. See <xref href="GUID-914DD950-4332-5F23-B725-F4D330DB19EB.dita">UID2
and UID3 statements</xref> and <xref href="GUID-AA6DEF11-6F23-3523-A9F7-F15DF918E1BA.dita#GUID-AA6DEF11-6F23-3523-A9F7-F15DF918E1BA/GUID-142C2031-3101-34E0-8A16-5410123C8D18"><apiname>RResourceFile::UidType()</apiname></xref> for
more information. </p>
<example><p>This example builds the resource <filepath>foo.rss</filepath> into <filepath>z:\private\10001234\foo.rsc</filepath>. </p><codeblock id="GUID-A1A82EAC-AC98-581D-A0B3-A05791E5C98E" xml:space="preserve">start resource foo.rss
TARGETPATH private\10001234
end
</codeblock><p>This example builds the resource <filepath>foo.rss</filepath> into <filepath>z:\private\10001234\bar.r01</filepath>,
and creates a header <filepath>bar.rsg</filepath> in <filepath>epoc32\include</filepath>. </p><codeblock id="GUID-01641ED1-A531-5090-BA9F-508D74401D1F" xml:space="preserve">START RESOURCE foo.rss
TARGET bar
TARGETPATH private\10001234
HEADER
LANG 01
UID 0x10002345 0x10003456
END</codeblock><p>This example builds only the resource header <filepath>bar.rsg</filepath> in <filepath>epoc32\include</filepath>. </p><codeblock id="GUID-6538518A-321E-5BD4-A68D-4EFCA96AF6A4" xml:space="preserve">START RESOURCE foo.rss
HEADERONLY
END</codeblock></example>
</conbody><related-links>
<link href="GUID-617A7B7E-DF91-5757-B473-D2E0B665F5E4.dita"><linktext>Application
resource tools guide</linktext></link>
<link href="GUID-687AFC9D-ADB7-5190-A535-C54B835825DD.dita"><linktext>Application
resource tools reference</linktext></link>
</related-links></concept>