Archived:CContactDatabase::DeleteDefaultFileL() always returns error code -14 KErrInUse (Known Issue)
Archived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.
Article Metadata
Compatibility
Platform(s): S60 3rd Edition (initial release) and FP1
Article
Created: User:Technical writer 1
(02 Nov 2007)
Last edited: hamishwillee
(07 Sep 2012)
Description
S60 3rd Edition/S60 3rd Edition, FP1 documentation (SDK help) states that the static function CContactDatabase::DeleteDefaultFileL() deletes the default contact database. However, it always returns the error KErrInUse (-14).
The following APIs return the same error:
CContactDatabase::GetDefaultNameL(defaultDb);
CContactDatabase::DeleteDatabaseL(defaultDb);
How to reproduce
Write an application which implements CContactDatabase::DeleteDefaultFileL(), run it in the device, and check the return value.
Solution
There is no solution to delete the default contact database. A simple workaround useful in some cases is to delete all the contacts in the default contact database using DeleteContactsL(const CContactIdArray &aContactIds) instead of deleting the default contact database.


I don't understand why this is an issue. Default contact database is always use by contact server....therefore that error code looks fine to me......