Are AIF files supported in s60 3rd edition or are they deprecated

Source: Internet
Author: User
Are AIF files supported in s60 3rd edition or are they deprecated?

AIF files are not supported in s60 3rd edition.

Why is the registration RSS file required, where shocould it be located, and what information shocould it contain?

An Application Registration file defines application information that is required by the application launcher or system shell. this parameter des the application's name, uid, and properties. other information required by the shell, for instance the icons and captions, is defined separately; the location of the icon/caption definitions is provided in the regifile file. before Symbian OS v8.1, all of this information was provided in AIF files. in Symbian OS v8.1, both AIF files and registration files are supported, but from Symbian OS v9.1 (s60 3rd edition) onwards, only registration files are supported.

A registration file is required by every application, even if it has default properties, icons, and caption. it must specify at least the application's UID and the name of the application's executable.

All registration files are located in/Private/10003a3f/apps, On the same drive as the application.

Where shocould resources, help files, and other files used by the application be located and how does the framework know to look there?

Three completely new protected directories have been introduced because of platform security:

/Sys

  • All executable native code resides in/sys/bin.

  • /Sys/bin is a flat directory-for example, all EXE files and DLLs must have a different name.

  • TCB capability is required for modifying/sys contents.

  • Allfiles capability is enough for reading the/sys directory (file browser, diagnostics tools ).

/Resource

  • Read-only resource files shared by (potentially) all applications.

  • Applications without any capabilities can read these files.

  • TCB capability is required for modifying the contents of/resource.

  • Only the software installer adds and updates these files.

  • Subdirectories can be utilized to ensure that the file name remains unique.

/Private

/Private/<Sid>:The private directory of the process with Sid.

  • Only the process with the same SID has full access to the directory.

  • Other processes need allfiles capability to be able to access the directory.

  • Exception:

/Private/<Sid>/import: "foreign" files (that is, files not owned by the process itself) can be placed here. all other processes have access to this directory with no capability restrictions. thus, all content from here shoshould be handled as untrusted by default.

These protected directories are located on either fixed or removable drives. All the other (previusly used) directories are unprotected, so it is not safe to leave any sensitive data in them.

Type Old, current location New location in platsec directory structure

AIF *

/System/apps/<app>/

None

Application (. app )*

/System/apps/<app>/

None

Application resource (. RSC)

/System/apps/<app>/

/Resource/apps/

Application bitmap files (. MBM,. MIF)

/System/apps/<app>

/Resource/apps/

Exes

/System/programs/

/Sys/bin/

FEP Resources

/System/FEP/

/Resource/FEP/

Help Files

/System/help/

/Resource/help/

Shared libraries

/System/libs/

/Sys/bin/

Executables

/System/programs

/Sys/bin/

Temp files

/Temp

/Private/<SID of the executable>/temp

What modifications are required to change an application from a. app to A. EXE?

MyApp. MMP

In the MMP file a new target and target type must be defined. Additionally, every line that starts with resource or systemresource must be changed to a start resource... End Block so that a targetpath can be defined for the resource to be built. The targetpath keyword will be neglected by the compiler when used outside start resource... End blocks. Make the Changes marked with bold into the existing MyApp. MMP file:

# Ifdef app_to_exe

Target myapp.exe

Targettype exe

# Else

Target MyApp. app

Targettype app

 # Endif

UID 0x100039ce 0x1000xxxx

Vendorid xxxx

Capability xxxx

// Note that for app_to_exe the targetpath does not need be defined, because it

// Is automatically handled by the build tools

# Ifndef app_to_exe

Targetpath/system/apps/MyApp

# Endif

MyApp. cpp

Add new entrypoints for EXE type application creation & initialization into the file where newapplication () is defined. The changes have been marked with bold font.

# Ifdef app_to_exe

# Include <eikstart. h>

Local_c capaapplication * newapplication ()

{

Return new cmyapplication;

}

Gldef_c tint e32main ()

{

Return eikstart: runapplication (newapplication );

}

# If defined (_ wins __)&&! Defined (eka2)

Gldef_c tint e32dll (tdllreason)

{

Return kerrnone;

}

Export_c tint winsmain (tdesc * acmdline)

{

Return eikstart: runapplication (newapplication, acmdline );

}

# Endif

# Else //! App_to_exe

//--------------------------------------------------------------

// Newapplication

// Creates a new MyApp Application Object (cmyapplication ).

// Returns: The New Application Object (cmyapplication ).

// Null if out of memory.

//--------------------------------------------------------------

//

Export_c capaapplication * newapplication ()

{

Return new cmyapplication;

}

//--------------------------------------------------------------

// E32dll

// Standard entry point for the Application DLL (MyApp. APP ).

// Returns: Standard Symbian OS error code, kerrnone if successful.

//--------------------------------------------------------------

//

# If! Defined (eka2)

Gldef_c tint e32dll (tdllreason)

{

Return kerrnone;

}

# Endif

# Endif // app_to_exe


 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.