|
1 <h1>KERN-EXEC</h1> |
|
2 <p> |
|
3 These panics represent program errors which are detected by the Kernel |
|
4 Executive. Typically, they are caused by passing bad or contradictory |
|
5 parameters to functions. Threads which cause exceptions also raise a KERN-EXEC |
|
6 panic. |
|
7 </p> |
|
8 <p> |
|
9 The thread causing the panic is terminated. |
|
10 </p> |
|
11 <code>0</code> |
|
12 <p> |
|
13 This panic is raised when the Kernel cannot find an object in the |
|
14 object index for the current process or current thread using the specified |
|
15 object index number (the raw handle number). |
|
16 </p> |
|
17 <p> |
|
18 The most common reason for this is trying to use a kernel-side |
|
19 resource without first having sucessfully created it or sucessfully opened it. |
|
20 Typically, such resources are created or opened through user side handles, |
|
21 which are instances of classes derived from <a href="../reference-cpp/E32_EKA2/RHandleBaseClass.html#%3a%3aRHandleBase" title="class RHandleBase"><code class="ApiItem">RHandleBase</code></a>, |
|
22 for example, <a href="../reference-cpp/E32_EKA2/RLibraryClass.html#%3a%3aRLibrary" title="class RLibrary"><code class="ApiItem">RLibrary</code></a>, <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread" title="class RThread"><code class="ApiItem">RThread</code></a>, |
|
23 <a href="../reference-cpp/E32_EKA2/RProcessClass.html#%3a%3aRProcess" title="class RProcess"><code class="ApiItem">RProcess</code></a>, <a href="../reference-cpp/E32_EKA2/RSemaphoreClass.html#%3a%3aRSemaphore" title="class RSemaphore"><code class="ApiItem">RSemaphore</code></a> etc. [Note that |
|
24 this list is not exhaustive]. |
|
25 </p> |
|
26 <p> |
|
27 For example, a call to <a href="../reference-cpp/E32_EKA2/RLibraryClass.html#%3a%3aRLibrary%3a%3aLookup%28%29" title="function RLibrary::Lookup()"><code class="ApiItem">RLibrary::Lookup()</code></a> |
|
28 panics with KERN-EXEC 0 if not preceded by a successful call to |
|
29 <a href="../reference-cpp/E32_EKA2/RLibraryClass.html#%3a%3aRLibrary%3a%3aLoad%28%29" title="function RLibrary::Load()"><code class="ApiItem">RLibrary::Load()</code></a>. |
|
30 </p> |
|
31 <code>1</code> |
|
32 <p> |
|
33 This is a general panic raised as a result of trying an |
|
34 unauthorised activity such as trying to suspend a thread, to set the priority |
|
35 of a thread or to set the priority of a process, when not authorised to do so. |
|
36 </p> |
|
37 <code>2</code> |
|
38 <p> |
|
39 This panic is raised by the kernel when opening a kernel side |
|
40 object, a <a href="../reference-cpp/E32_EKA2/DObjectClass.html#%3a%3aDObject" title="class DObject"><code class="ApiItem">DObject</code></a> type, and the fullname is invalid. |
|
41 </p> |
|
42 <p> |
|
43 The fullname is deemed to be invalid if it contains a character |
|
44 that is not one of the printable characters lying between 0x20 and 0x7e |
|
45 inclusive, or it contains an asterisk or a question mark. |
|
46 </p> |
|
47 <p> |
|
48 See also <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aValidateFullName%28%29" title="function Kern::ValidateFullName()"><code class="ApiItem">Kern::ValidateFullName()</code></a>. |
|
49 </p> |
|
50 <code>3</code> |
|
51 <p> |
|
52 This panic is raised when an unhandled exception occurs. Exceptions |
|
53 have many causes, but the most common are access violations caused, for |
|
54 example, by dereferencing NULL. Among other possible causes are: general |
|
55 protection faults, executing an invalid instruction, alignment checks, etc. |
|
56 </p> |
|
57 <code>4</code> |
|
58 <p> |
|
59 This panic is not used. |
|
60 </p> |
|
61 <code>5</code> |
|
62 <p> |
|
63 This panic is not used. |
|
64 </p> |
|
65 <code>6</code> |
|
66 <p> |
|
67 This panic is raised by the kernel when a handle to a code segment |
|
68 is invalid. |
|
69 </p> |
|
70 <code>7</code> |
|
71 <p> |
|
72 This panic is not used. |
|
73 </p> |
|
74 <code>8</code> |
|
75 <p> |
|
76 This panic is not used. |
|
77 </p> |
|
78 <code>9</code> |
|
79 <p> |
|
80 This is a general type of panic that is usually raised by a device |
|
81 driver when dealing with an asynchronous request, and it finds that an |
|
82 asynchronous request is already outstanding. For an example of the context in |
|
83 which this is raised, see |
|
84 <code class="filename">...\cedar\e32test\examples\driver1\driver1_ldd.cpp</code>. |
|
85 </p> |
|
86 <p> |
|
87 This panic is also raised when trying to subscribe to a property |
|
88 through a call to <a href="../reference-cpp/E32_EKA2/RPropertyClass.html#%3a%3aRProperty%3a%3aSubscribe%28%29" title="function RProperty::Subscribe()"><code class="ApiItem">RProperty::Subscribe()</code></a> and there is |
|
89 already an outstanding subscription on this property handle. |
|
90 </p> |
|
91 <code>10</code> |
|
92 <p> |
|
93 This panic is raised by |
|
94 <a href="../reference-cpp/E32_EKA2/DLogicalChannelClass.html#%3a%3aDLogicalChannel%3a%3aRequest%28%29" title="function DLogicalChannel::Request()"><code class="ApiItem">DLogicalChannel::Request()</code></a> when the request number passed |
|
95 to the function is smaller than the permitted minimum. |
|
96 </p> |
|
97 <p> |
|
98 See also <a href="../reference-cpp/E32_EKA2/DLogicalChannelClass.html#%3a%3aDLogicalChannel%3a%3aEMinRequestId" title="field DLogicalChannel::EMinRequestId"><code class="ApiItem">DLogicalChannel::EMinRequestId</code></a>. |
|
99 </p> |
|
100 <code>11</code> |
|
101 <p> |
|
102 This panic is raised when creating a logical channel, and the unit number is outside the permitted range: |
|
103 </p> |
|
104 <p> |
|
105 If unit numbers are not permitted, the unit number value must |
|
106 be <a href="../reference-cpp/E32_EKA2/e32const.hVariables.html#%3a%3aKNullUnit" title="field KNullUnit"><code class="ApiItem">KNullUnit</code></a>. |
|
107 </p> |
|
108 <p> |
|
109 If unit numbers are permitted, the unit number value must be |
|
110 less than <a href="../reference-cpp/E32_EKA2/e32const.hVariables.html#%3a%3aKMaxUnits" title="field KMaxUnits"><code class="ApiItem">KMaxUnits</code></a>. |
|
111 </p> |
|
112 <p> |
|
113 A logical channel is created as a result of a call to |
|
114 <a href="../reference-cpp/E32_EKA2/RBusLogicalChannelClass.html#%3a%3aRBusLogicalChannel%3a%3aDoCreate%28%29" title="function RBusLogicalChannel::DoCreate()"><code class="ApiItem">RBusLogicalChannel::DoCreate()</code></a>. |
|
115 </p> |
|
116 <code>12</code> |
|
117 <p> |
|
118 This panic is raised by the kernel if an event capture hook has already been designated. |
|
119 </p> |
|
120 <code>13</code> |
|
121 <p> |
|
122 This panic is raised by the kernel if the current thread is not the designated event capture hook. |
|
123 </p> |
|
124 <code>14</code> |
|
125 <p> |
|
126 This panic is raised when an attempt is made to set the priority of |
|
127 a thread or process to an illegal value. |
|
128 </p> |
|
129 <p> |
|
130 The permitted priority values for a user process are a subset of |
|
131 the values defined by the <a href="../reference-cpp/E32_EKA2/TProcessPriorityEnum.html#%3a%3aTProcessPriority" title="enum TProcessPriority"><code class="ApiItem">TProcessPriority</code></a> enum. The |
|
132 permitted values are: |
|
133 </p> |
|
134 <code> EPriorityLow |
|
135 </code> |
|
136 <p> |
|
137 <code>EPriorityBackground |
|
138 </code> |
|
139 </p> |
|
140 <p> |
|
141 <code>EPriorityForeground |
|
142 </code> |
|
143 </p> |
|
144 <p> |
|
145 <code>EPriorityHigh |
|
146 </code> |
|
147 </p> |
|
148 <p> |
|
149 The permitted priority values for a user thread are a subset of the |
|
150 values defined by the <a href="../reference-cpp/E32_EKA2/TThreadPriorityEnum.html#%3a%3aTThreadPriority" title="enum TThreadPriority"><code class="ApiItem">TThreadPriority</code></a> enum. The permitted |
|
151 values are: |
|
152 </p> |
|
153 <p> |
|
154 <code> EPriorityMuchLess |
|
155 </code> |
|
156 </p> |
|
157 <p> |
|
158 <code> EPriorityLess |
|
159 </code> |
|
160 </p> |
|
161 <p> |
|
162 <code> EPriorityNormal |
|
163 </code> |
|
164 </p> |
|
165 <p> |
|
166 <code>EPriorityMore |
|
167 </code> |
|
168 </p> |
|
169 <p> |
|
170 <code> EPriorityMuchMore |
|
171 </code> |
|
172 </p> |
|
173 <code>EPriorityRealTime |
|
174 </code> |
|
175 </p> |
|
176 <p> |
|
177 <code>EPriorityAbsoluteVeryLow |
|
178 </code> |
|
179 </p> |
|
180 <p> |
|
181 <code> EPriorityAbsoluteLow |
|
182 </code> |
|
183 </p> |
|
184 <p> |
|
185 <code> EPriorityAbsoluteBackground |
|
186 </code> |
|
187 </p> |
|
188 <p> |
|
189 <code> EPriorityAbsoluteForeground |
|
190 </code> |
|
191 </p> |
|
192 <p> |
|
193 <code> EPriorityAbsoluteHigh |
|
194 </code> |
|
195 </p> |
|
196 <code>15</code> |
|
197 <p> |
|
198 This panic is raised when a timer event is requested from an |
|
199 asynchronous timer service, an <a href="../reference-cpp/E32_EKA2/RTimerClass.html#%3a%3aRTimer" title="class RTimer"><code class="ApiItem">RTimer</code></a>, and a timer event |
|
200 is already outstanding. It is caused by calling either the <code>At()</code>, |
|
201 <code>After()</code> or <code>Lock()</code> member functions after a previous |
|
202 call to any of these functions, but before the timer event requested by those |
|
203 functions has completed. |
|
204 </p> |
|
205 <code>16</code> |
|
206 <p> |
|
207 This panic is not used. |
|
208 </p> |
|
209 <code>17</code> |
|
210 <p> |
|
211 The panic is raised if kernel heap checking has failed. |
|
212 </p> |
|
213 <code>18</code> |
|
214 <p> |
|
215 This panic is not used. |
|
216 </p> |
|
217 <code>19</code> |
|
218 <p> |
|
219 This panic is raised by the Kernel when a server program makes a |
|
220 request to receive a message, i.e. when it calls the <code>Receive()</code> |
|
221 member function of <code>RServer2</code>, the handle to the Kernel side server |
|
222 object. The panic occurs when a receive message request has previously been |
|
223 made and is still outstanding. |
|
224 </p> |
|
225 <p> |
|
226 Note that <code>RServer2</code> is internal to Symbian |
|
227 </p> |
|
228 <code>20</code> |
|
229 <p> |
|
230 This panic is raised by the Kernel when a request for an event, as |
|
231 originated by a call to <code>UserSvr::RequestEvent()</code>, defined in |
|
232 <code class="filename">e32svr.h</code>, is made while a previously made request is still |
|
233 outstanding. |
|
234 </p> |
|
235 <code>21</code> |
|
236 <p> |
|
237 This panic is not used. |
|
238 </p> |
|
239 <code>22</code> |
|
240 <p> |
|
241 This panic is not used. |
|
242 </p> |
|
243 <code>23</code> |
|
244 <p> |
|
245 This panic is raised in a call to |
|
246 <a href="../reference-cpp/E32_EKA2/RSessionBaseClass.html#%3a%3aRSessionBase%3a%3aShareAuto%28%29" title="function RSessionBase::ShareAuto()"><code class="ApiItem">RSessionBase::ShareAuto()</code></a> or |
|
247 <a href="../reference-cpp/E32_EKA2/RSessionBaseClass.html#%3a%3aRSessionBase%3a%3aShareProtected%28%29" title="function RSessionBase::ShareProtected()"><code class="ApiItem">RSessionBase::ShareProtected()</code></a>, i.e. when attempting to |
|
248 create a session with a server that can be shared, and the server does not |
|
249 allow or support shared sessions. |
|
250 </p> |
|
251 <code>24</code> |
|
252 <p> |
|
253 This panic is raised when writing global DLL data, and the length |
|
254 of data to be written is greater than the space available. |
|
255 </p> |
|
256 <code>25</code> |
|
257 <p> |
|
258 This panic is raised when searching for objects, using the internal |
|
259 function <code>TFindHandleBase::NextObject()</code>, and an invalid type of |
|
260 object is specified; i.e. it is not a thread, process, chunk, mutex etc. etc. |
|
261 </p> |
|
262 <code>26</code> |
|
263 <p> |
|
264 This panic is raised by kernel side code that implements heap |
|
265 debugging behaviour, when a specific debug request is not recognised. |
|
266 </p> |
|
267 <code>27</code> |
|
268 <p> |
|
269 This panic is raised when an executive call is made with an invalid |
|
270 call number. |
|
271 </p> |
|
272 <code>28</code> |
|
273 <p> |
|
274 This panic is not used. |
|
275 </p> |
|
276 <code>29</code> |
|
277 <p> |
|
278 This panic is not used. |
|
279 </p> |
|
280 <code>30</code> |
|
281 <p> |
|
282 This panic is raised when an attempt is being made to send a |
|
283 synchronous message to a server more than once, using the current thread's |
|
284 dedicated synchronous message. |
|
285 </p> |
|
286 <code>31</code> |
|
287 <p> |
|
288 This panic is not used. |
|
289 </p> |
|
290 <code>32</code> |
|
291 <p> |
|
292 This panic is called by <code>DProcess::Resume()</code> when trying |
|
293 to resume a process that is still being loaded. |
|
294 </p> |
|
295 <code>33</code> |
|
296 <p> |
|
297 This panic is raised in a call to |
|
298 <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aKUDesInfo%28%29" title="function Kern::KUDesInfo()"><code class="ApiItem">Kern::KUDesInfo()</code></a>, <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aKUDesPut%28%29" title="function Kern::KUDesPut()"><code class="ApiItem">Kern::KUDesPut()</code></a> |
|
299 etc, when an invalid descriptor is passed. |
|
300 </p> |
|
301 <code>34</code> |
|
302 <p> |
|
303 This panic is raised in a call to |
|
304 <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aKUDesSetLength%28%29" title="function Kern::KUDesSetLength()"><code class="ApiItem">Kern::KUDesSetLength()</code></a> & |
|
305 <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aKUDesPut%28%29" title="function Kern::KUDesPut()"><code class="ApiItem">Kern::KUDesPut()</code></a> when the descriptor passed to it is not a |
|
306 modifiable type; i.e. is derived from <a href="../reference-cpp/E32_EKA2/TDesCTypedef.html#%3a%3aTDesC" title="typedef TDesC"><code class="ApiItem">TDesC</code></a> but not |
|
307 derived from <a href="../reference-cpp/E32_EKA2/TDesTypedef.html#%3a%3aTDes" title="typedef TDes"><code class="ApiItem">TDes</code></a>. |
|
308 </p> |
|
309 <code>35</code> |
|
310 <p> |
|
311 This panic is raised in a call to |
|
312 <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aKUDesSetLength%28%29" title="function Kern::KUDesSetLength()"><code class="ApiItem">Kern::KUDesSetLength()</code></a> & |
|
313 <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aKUDesPut%28%29" title="function Kern::KUDesPut()"><code class="ApiItem">Kern::KUDesPut()</code></a> when the length of the source descriptor |
|
314 is longer than the maximum length of the target descriptor. |
|
315 </p> |
|
316 <code>36</code> |
|
317 <p> |
|
318 This panic is raised by the kernel side code that implements the |
|
319 setting of the currency symbol when the length of the currency symbol is |
|
320 greater than <a href="../reference-cpp/E32_EKA2/e32const.hVariables.html#%3a%3aKMaxCurrencySymbol" title="field KMaxCurrencySymbol"><code class="ApiItem">KMaxCurrencySymbol</code></a>. |
|
321 </p> |
|
322 <code>37</code> |
|
323 <p> |
|
324 This panic is raised by kernel code when it tries to acquire the |
|
325 process DLL lock just before a load, and the wait DLL lock is invalid. |
|
326 </p> |
|
327 <code>38</code> |
|
328 <p> |
|
329 This panic is raised by internal kernel code when an illegal |
|
330 attempt is made to attach to a library. |
|
331 </p> |
|
332 <code>39</code> |
|
333 <p> |
|
334 This panic is raised when extracting a list of DLL entry points, |
|
335 and the number exceeds the maximum permitted. |
|
336 </p> |
|
337 <code>40</code> |
|
338 <p> |
|
339 This panic is raised by internal kernel code when an illegal |
|
340 attempt is made to detach a library. |
|
341 </p> |
|
342 <code>41</code> |
|
343 <p> |
|
344 This panic is raised by internal kernel code when an illegal |
|
345 attempt is made to attach to a library. |
|
346 </p> |
|
347 <code>42</code> |
|
348 <p> |
|
349 This panic is raised by internal kernel code when an illegal |
|
350 attempt is made to detach a library. |
|
351 </p> |
|
352 <code>43</code> |
|
353 <p> |
|
354 This panic is raised by kernel code when it tries to release the |
|
355 process DLL lock when a load fails, and the release DLL lock is invalid. |
|
356 </p> |
|
357 <code>44</code> |
|
358 <p> |
|
359 This panic is raised when a bad message handle is passed to the |
|
360 kernel. This usually occurs when using functions called on the |
|
361 <a href="../reference-cpp/E32_EKA2/RMessagePtr2Class.html#%3a%3aRMessagePtr2" title="class RMessagePtr2"><code class="ApiItem">RMessagePtr2</code></a> or <a href="../reference-cpp/E32_EKA2/RMessage2Class.html#%3a%3aRMessage2" title="class RMessage2"><code class="ApiItem">RMessage2</code></a> classes |
|
362 after the message has been completed; or when the <code>iHandle</code> data |
|
363 member of the base class <a href="../reference-cpp/E32_EKA2/RHandleBaseClass.html#%3a%3aRHandleBase" title="class RHandleBase"><code class="ApiItem">RHandleBase</code></a> has become corrupt. |
|
364 </p> |
|
365 <code>45</code> |
|
366 <p> |
|
367 This panic is not used. |
|
368 </p> |
|
369 <code>46</code> |
|
370 <p> |
|
371 This panic can be raised as a result of a call to one of a large |
|
372 number of functions. In general, the panic indicates an attempt to perform an |
|
373 operation on a thread or process by code running in another process - violating |
|
374 the security principle of process isolation. |
|
375 </p> |
|
376 <p> |
|
377 There are exceptions to this general rule, for example, where the |
|
378 panic is raised because the calling process has insufficient capability. The |
|
379 precise reason is stated with the function(s). |
|
380 </p> |
|
381 <p> |
|
382 The panic is raised on a call to the following function if the |
|
383 process owning the thread performing the call is not the creator of the target |
|
384 process or, if a handle is specified, the handle is not local. |
|
385 </p> |
|
386 <p> |
|
387 <a href="../reference-cpp/E32_EKA2/RProcessClass.html#%3a%3aRProcess%3a%3aSetParameter%28%29" title="function RProcess::SetParameter()"><code class="ApiItem">RProcess::SetParameter()</code></a> |
|
388 </p> |
|
389 <p> |
|
390 The panic is raised on a call to the following functions if the |
|
391 process owning the thread performing the call is not the same as the target |
|
392 process. |
|
393 </p> |
|
394 <p> |
|
395 <a href="../reference-cpp/E32_EKA2/RProcessClass.html#%3a%3aRProcess%3a%3aKill%28%29" title="function RProcess::Kill()"><code class="ApiItem">RProcess::Kill()</code></a> |
|
396 </p> |
|
397 <p> |
|
398 <a href="../reference-cpp/E32_EKA2/RProcessClass.html#%3a%3aRProcess%3a%3aTerminate%28%29" title="function RProcess::Terminate()"><code class="ApiItem">RProcess::Terminate()</code></a> |
|
399 </p> |
|
400 <p> |
|
401 <a href="../reference-cpp/E32_EKA2/RProcessClass.html#%3a%3aRProcess%3a%3aPanic%28%29" title="function RProcess::Panic()"><code class="ApiItem">RProcess::Panic()</code></a> |
|
402 </p> |
|
403 <p> |
|
404 <a href="../reference-cpp/E32_EKA2/RProcessClass.html#%3a%3aRProcess%3a%3aSetJustInTime%28%29" title="function RProcess::SetJustInTime()"><code class="ApiItem">RProcess::SetJustInTime()</code></a> |
|
405 </p> |
|
406 <p> |
|
407 <a href="../reference-cpp/E32_EKA2/RProcessClass.html#%3a%3aRProcess%3a%3aResume%28%29" title="function RProcess::Resume()"><code class="ApiItem">RProcess::Resume()</code></a> |
|
408 </p> |
|
409 <p> |
|
410 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aKill%28%29" title="function RThread::Kill()"><code class="ApiItem">RThread::Kill()</code></a> |
|
411 </p> |
|
412 <p> |
|
413 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aTerminate%28%29" title="function RThread::Terminate()"><code class="ApiItem">RThread::Terminate()</code></a> |
|
414 </p> |
|
415 <p> |
|
416 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aPanic%28%29" title="function RThread::Panic()"><code class="ApiItem">RThread::Panic()</code></a> |
|
417 </p> |
|
418 <p> |
|
419 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aSuspend%28%29" title="function RThread::Suspend()"><code class="ApiItem">RThread::Suspend()</code></a> |
|
420 </p> |
|
421 <p> |
|
422 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aResume%28%29" title="function RThread::Resume()"><code class="ApiItem">RThread::Resume()</code></a> |
|
423 </p> |
|
424 <p> |
|
425 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aSetPriority%28%29" title="function RThread::SetPriority()"><code class="ApiItem">RThread::SetPriority()</code></a> |
|
426 </p> |
|
427 <p> |
|
428 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aRequestComplete%28%29" title="function RThread::RequestComplete()"><code class="ApiItem">RThread::RequestComplete()</code></a> |
|
429 </p> |
|
430 <p> |
|
431 <a href="../reference-cpp/E32_EKA2/RThreadClass.html#%3a%3aRThread%3a%3aRequestSignal%28%29" title="function RThread::RequestSignal()"><code class="ApiItem">RThread::RequestSignal()</code></a> |
|
432 </p> |
|
433 <p> |
|
434 NOTE: the creator of a new process can kill or panic the new |
|
435 process, change the new process priority and set the new process startup |
|
436 parameters until the process is resumed (which the creator can also do). After |
|
437 the new process has been resumed, then it becomes totally independent of its |
|
438 creator, and any attempt to panic it, kill it etc will raise the KERN-EXEC 46 |
|
439 panic. |
|
440 </p> |
|
441 <p> |
|
442 The panic is raised on call to the following (Symbian partner |
|
443 only) functions if the calling process does not have the <em>PowerMgmt</em> |
|
444 capability (<code class="ApiItem">TCapability::ECapabilityPowerMgmt</code>): |
|
445 </p> |
|
446 <p> |
|
447 <a href="../reference-cpp/E32_EKA2/PowerClass.html#%3a%3aPower%3a%3aPowerDown%28%29" title="function Power::PowerDown()"><code class="ApiItem">Power::PowerDown()</code></a> |
|
448 </p> |
|
449 <p> |
|
450 <a href="../reference-cpp/E32_EKA2/PowerClass.html#%3a%3aPower%3a%3aEnableWakeupEvents%28%29" title="function Power::EnableWakeupEvents()"><code class="ApiItem">Power::EnableWakeupEvents()</code></a> |
|
451 </p> |
|
452 <p> |
|
453 <a href="../reference-cpp/E32_EKA2/PowerClass.html#%3a%3aPower%3a%3aDisableWakeupEvents%28%29" title="function Power::DisableWakeupEvents()"><code class="ApiItem">Power::DisableWakeupEvents()</code></a> |
|
454 </p> |
|
455 <p> |
|
456 <a href="../reference-cpp/E32_EKA2/PowerClass.html#%3a%3aPower%3a%3aRequestWakeupEventNotification%28%29" title="function Power::RequestWakeupEventNotification()"><code class="ApiItem">Power::RequestWakeupEventNotification()</code></a> |
|
457 </p> |
|
458 <p> |
|
459 <a href="../reference-cpp/E32_EKA2/PowerClass.html#%3a%3aPower%3a%3aCancelWakeupEventNotification%28%29" title="function Power::CancelWakeupEventNotification()"><code class="ApiItem">Power::CancelWakeupEventNotification()</code></a> |
|
460 </p> |
|
461 <p> |
|
462 The panic is raised on call to the following functions if the |
|
463 calling process does not have the <em>WriteDeviceData</em> capability |
|
464 (<code class="ApiItem">TCapability::ECapabilityWriteDeviceData</code>): |
|
465 </p> |
|
466 <p> |
|
467 <a href="../reference-cpp/E32_EKA2/UserClass.html#%3a%3aUser%3a%3aSetMachineConfiguration%28%29" title="function User::SetMachineConfiguration()"><code class="ApiItem">User::SetMachineConfiguration()</code></a> |
|
468 </p> |
|
469 <p> |
|
470 <a href="../reference-cpp/E32_EKA2/UserClass.html#%3a%3aUser%3a%3aSetHomeTime%28%29" title="function User::SetHomeTime()"><code class="ApiItem">User::SetHomeTime()</code></a> |
|
471 </p> |
|
472 <p> |
|
473 <a href="../reference-cpp/E32_EKA2/UserClass.html#%3a%3aUser%3a%3aSetUTCTime%28%29" title="function User::SetUTCTime()"><code class="ApiItem">User::SetUTCTime()</code></a> |
|
474 </p> |
|
475 <p> |
|
476 <a href="../reference-cpp/E32_EKA2/UserClass.html#%3a%3aUser%3a%3aSetUTCOffset%28%29" title="function User::SetUTCOffset()"><code class="ApiItem">User::SetUTCOffset()</code></a> |
|
477 </p> |
|
478 <p> |
|
479 <a href="../reference-cpp/E32_EKA2/UserClass.html#%3a%3aUser%3a%3aSetUTCTimeAndOffset%28%29" title="function User::SetUTCTimeAndOffset()"><code class="ApiItem">User::SetUTCTimeAndOffset()</code></a> |
|
480 </p> |
|
481 <p> |
|
482 The panic is raised on call to the following function if the |
|
483 calling process does not have the <em>ReadDeviceData</em> capability |
|
484 (<code class="ApiItem">TCapability::ECapabilityReadDeviceData</code>): |
|
485 </p> |
|
486 <p> |
|
487 <a href="../reference-cpp/E32_EKA2/UserClass.html#%3a%3aUser%3a%3aMachineConfiguration%28%29" title="function User::MachineConfiguration()"><code class="ApiItem">User::MachineConfiguration()</code></a> |
|
488 </p> |
|
489 <code>47</code> |
|
490 <p> |
|
491 This panic is raised when the user issues a request to be notified |
|
492 of messages or the availability of space, when a request has already been |
|
493 issued and is still outstanding. |
|
494 </p> |
|
495 <p> |
|
496 See <a href="../reference-cpp/E32_EKA2/RMsgQueueClass.html#%3a%3aRMsgQueue" title="class RMsgQueue"><code class="ApiItem">RMsgQueue</code></a>, asynchronous message queues. |
|
497 </p> |
|
498 <code>48</code> |
|
499 <p> |
|
500 This panic is raised when creating a message queue, and the size of |
|
501 the template parameter is invalid. |
|
502 </p> |
|
503 <p> |
|
504 See <a href="../reference-cpp/E32_EKA2/RMsgQueueClass.html#%3a%3aRMsgQueue" title="class RMsgQueue"><code class="ApiItem">RMsgQueue</code></a>, asynchronous message queues. |
|
505 </p> |
|
506 <code>49</code> |
|
507 <p> |
|
508 This panic is raised when creating a message queue, and the |
|
509 specified number of slots is not positive. |
|
510 </p> |
|
511 <p> |
|
512 See <a href="../reference-cpp/E32_EKA2/RMsgQueueClass.html#%3a%3aRMsgQueue" title="class RMsgQueue"><code class="ApiItem">RMsgQueue</code></a>, asynchronous message queues. |
|
513 </p> |
|
514 <code>50</code> |
|
515 <p> |
|
516 This panic is raised if an attempt is made to cancel an outstanding |
|
517 request to be notified of messages or the availability of space, and the cancel |
|
518 is being made by a thread in a different process to the one from which the |
|
519 request was originally made. |
|
520 </p> |
|
521 <p> |
|
522 See <a href="../reference-cpp/E32_EKA2/RMsgQueueClass.html#%3a%3aRMsgQueue" title="class RMsgQueue"><code class="ApiItem">RMsgQueue</code></a>, asynchronous message queues. |
|
523 </p> |
|
524 <code>51</code> |
|
525 <p> |
|
526 This panic is raised by <code>RProcess::Setparameter()</code> if a |
|
527 slot value is invalid. |
|
528 </p> |
|
529 <code>52</code> |
|
530 <p> |
|
531 This panic is raised by <code>RProcess::Setparameter()</code> if a |
|
532 slot is in use. |
|
533 </p> |
|
534 <code>53</code> |
|
535 <p> |
|
536 This panic is raised by <code>RProcess::Setparameter()</code> if |
|
537 the length of the data passed is negative. |
|
538 </p> |
|
539 <code>54</code> |
|
540 <p> |
|
541 This panic is raised by <a href="../reference-cpp/E32_EKA2/RCondVarClass.html#%3a%3aRCondVar%3a%3aWait%28%29" title="function RCondVar::Wait()"><code class="ApiItem">RCondVar::Wait()</code></a> when |
|
542 the current thread does not hold the specified mutex. |
|
543 </p> |
|
544 <code>55</code> |
|
545 <p> |
|
546 This panic is raised when a call is made to <code>RThread::GetDesMaxLength()</code>, which is now obsolete. |
|
547 </p> |
|
548 <code>56</code> |
|
549 <p> |
|
550 This panic is raised on a process which has not yet been resumed, |
|
551 and whose creator has died. |
|
552 </p> |
|
553 <code>57</code> |
|
554 <p> |
|
555 This panic is raised when a session receives a message to connect |
|
556 to a server when the session is already connected to that server. |
|
557 </p> |
|
558 <code>58</code> |
|
559 <p> |
|
560 This panic is raised during an attempt to connect to a server. As |
|
561 part of this process, a pointer to an instance of the |
|
562 <a href="../reference-cpp/E32_EKA2/CSession2Class.html#%3a%3aCSession2" title="class CSession2"><code class="ApiItem">CSession2</code></a> derived class is saved in the instance of the |
|
563 <a href="../reference-cpp/E32_EKA2/CServer2Class.html#%3a%3aCServer2" title="class CServer2"><code class="ApiItem">CServer2</code></a> derived class. |
|
564 </p> |
|
565 <p> |
|
566 The panic is caused when the pointer to the session object is NULL. |
|
567 </p> |
|
568 <code>59</code> |
|
569 <p> |
|
570 This panic is raised during an attempt to connect to a server. As |
|
571 part of this process, a pointer to an instance of the |
|
572 <a href="../reference-cpp/E32_EKA2/CSession2Class.html#%3a%3aCSession2" title="class CSession2"><code class="ApiItem">CSession2</code></a> derived class is saved in the instance of the |
|
573 <a href="../reference-cpp/E32_EKA2/CServer2Class.html#%3a%3aCServer2" title="class CServer2"><code class="ApiItem">CServer2</code></a> derived class. |
|
574 </p> |
|
575 <p> |
|
576 This panic is caused when a pointer to the session has previously |
|
577 been set. |
|
578 </p> |
|
579 <code>60</code> |
|
580 <p> |
|
581 This panic is raised during an attempt to connect to a server. As |
|
582 part of this process, a pointer to an instance of the |
|
583 <a href="../reference-cpp/E32_EKA2/CSession2Class.html#%3a%3aCSession2" title="class CSession2"><code class="ApiItem">CSession2</code></a> derived class is saved in the instance of the |
|
584 <a href="../reference-cpp/E32_EKA2/CServer2Class.html#%3a%3aCServer2" title="class CServer2"><code class="ApiItem">CServer2</code></a> derived class. |
|
585 </p> |
|
586 <p>This panic is caused when a pointer to a session is being set, and |
|
587 the message is not the connect message.</p> |