Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
<?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 xml:lang="en" id="GUID-C7786266-FCE7-5A96-AA92-9A71486D3B6C"><title>Troubleshooting Plug-in loading Errors</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>Sometimes, attempts by clients to instantiate a plug-in leave with a generic error code of -46 or -1. This page discusses the most likely reasons why this might happen. </p> <p>This page contains some help on interpreting error messages </p> <table id="GUID-5BFE11FA-4D4B-5663-9972-1B25B71F78E8"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><tbody><row><entry><p> <b>Error</b> </p> </entry> <entry><p> <b>Action</b> </p> </entry> </row> <row><entry><p> <i>Error -46</i> (<xref href="GUID-213DE05E-24F7-3E94-9B35-F4A72B3EBFD8.dita"><apiname>KErrPermissionDenied</apiname></xref>): </p> </entry> <entry><ul><li id="GUID-E1D548E6-E200-5960-86D6-7E00278B8199"><p>The plug-in DLL providing the implementation has less platform security capabilities than the client process. This is a problem as the platform security DLL loading rules require a DLL to have the same or greater capabilities as the process trying to use it. </p> <p>Refer <xref href="GUID-9E4D75C0-D797-5541-8E52-3C6D154CC74A.dita">ECom and the Platform Security Architecture</xref> for more details. </p> </li> <li id="GUID-6C2EDB7E-1E8C-53B7-941D-579114751DC5"><p>The plug-in DLL providing the implementation was incorrectly installed on a media card. The system hash value of the plug-in DLL was missing, or it was inconsistent with the one calculated for the plug-in DLL at load time. </p> <p>Refer <xref href="GUID-9E4D75C0-D797-5541-8E52-3C6D154CC74A.dita">ECom and the Platform Security Architecture</xref> for more details. </p> </li> <li id="GUID-1C2AE301-2B98-524B-9A7D-4D6BCC5C715C"><p>There is an error in the plug-in registration file. The UID value specified in the <codeph>dll_uid</codeph> member of the <xref href="GUID-7181E6D8-0FFB-3F5B-B394-FFEE1BB9C950.dita"><apiname>REGISTRY_INFO</apiname></xref> structure in the plug-in's resource file did not match the Secure ID (UID3 value) of the plug-in DLL. If a match is not found the plug-in is discarded and is not added to the registry of available plug-ins. </p> <p>Refer <xref href="GUID-9A9103E4-27B0-5CF3-855A-DCD44795A5C0.dita">Creating a Standard Registration Resource File</xref> for more details. </p> </li> </ul> </entry> </row> <row><entry><p> <i>Error -1</i> (<xref href="GUID-5E653C17-372C-32E1-A1B2-9E69A9991C40.dita"><apiname>KErrNotFound</apiname></xref>): </p> </entry> <entry><p>This indicates an error in coding or installing the plug-in. The problem needs to be fixed by the creator of the plug-in. </p> <p>Possible causes of the error are: </p> <ul><li id="GUID-4AD8C2D2-B16D-5B7B-A3F0-98C53FAE8A8B"><p>When porting a plug-in from a version of Symbian platform before 9.1, the files were not installed in the locations required by Symbian OS v9.1 and later versions. This prevents the framework from discovering the plug-in. </p> <p>Refer <xref href="GUID-641A276D-F618-50CE-BA5A-658DCC26BAB5.dita">How to write an implementation project file</xref> for more details. </p> </li> <li id="GUID-20E11737-174E-5A5D-B2E9-FE051A40E669"><p>The plug-in was compiled using the CodeWarrior IDE before version 3.1. This ignores the <codeph>TARGET</codeph> keyword in <codeph>START
RESOURCE</codeph>...<codeph>END</codeph> blocks, so that the wrong resource file is built. </p> <p>For example in the code block below: </p> <codeblock id="GUID-0F16893A-04A1-52DA-8FDA-7BBF302042B8" xml:space="preserve">START RESOURCE 123456789.rss
TARGET foo.rsc
END</codeblock> <p>The resource file built is <codeph>123456789.rsc</codeph> rather than the expected <codeph>foo.rsc</codeph>. </p> <p>Solution for the above error are to build from the command line or from a later version of CodeWarrior. </p> </li> <li id="GUID-7FD7CDD8-6335-5748-8BC9-71797097E111"><p>DLLs to which the plug-in links are absent from the phone. </p> <p>The eshell text shell provides these commands to help you check for missing DLLs: </p> <ul><li id="GUID-2DA368DE-04DA-50E9-86A0-D70C90214EDE"><p> <codeph>chkdeps</codeph> checks the dependencies of an executable. </p> </li> <li id="GUID-2E1257B2-4FA4-5E60-A827-C43544956511"><p> <codeph>trace /L</codeph> in debug builds outputs messages describing why an attempt to load a DLL fails. </p> </li> </ul> </li> <li id="GUID-1333A0F7-6BB3-570C-9D6C-B09FF6CDEA12"><p>The <codeph>TImplementationProxy</codeph> array coding does not contain a matching entry for the plug-in. </p> <p>See <xref href="GUID-895A685E-83E8-51A3-A823-3A0E07B1E609.dita">How to export the implementation factories</xref> for more information. </p> </li> </ul> </entry> </row> </tbody> </tgroup> </table> </conbody></concept>