installationservices/swi/test/testapps/testappwithwc.cpp
changeset 0 ba25891c3a9e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/installationservices/swi/test/testapps/testappwithwc.cpp	Thu Dec 17 08:51:10 2009 +0200
@@ -0,0 +1,64 @@
+/*
+* Copyright (c) 2007-2009 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:
+*
+* Description: 
+* TESTAPPWITHRC.CPP
+*
+*/
+
+
+#include <e32std.h>
+#include <e32uid.h>
+#include <e32base.h>
+#include <e32test.h>
+#include <swi/pkgremover.h>
+#include "cleanuputils.h"
+
+using namespace Swi;
+
+_LIT(KTxtEPOC32EX," mainL failed");
+
+LOCAL_C void mainL();
+TInt E32Main() // main function called by E32
+	{
+	CTrapCleanup* cleanup=CTrapCleanup::New(); // get clean-up stack
+	TRAPD(error,mainL()); // more initialization, then do example
+	__ASSERT_ALWAYS(!error,User::Panic(KTxtEPOC32EX,error));
+	delete cleanup; // destroy clean-up stack
+	return 0; // and return
+	}
+
+LOCAL_C void mainL() // initialize and call example code under cleanup stack
+	{
+	RPointerArray<CUninstalledPackageEntry> uninstalledPkgEntry;
+	CleanupResetAndDestroy<RPointerArray<CUninstalledPackageEntry> >::PushL(uninstalledPkgEntry);
+
+	TDriveNumber drive = EDriveX;
+	TRAPD(err,UninstalledSisPackages::ListL(drive, uninstalledPkgEntry));
+	if(err==KErrPermissionDenied)
+		{
+		User::LeaveIfError(KErrPermissionDenied);
+		}
+	for(TInt loopCnt=0;loopCnt<uninstalledPkgEntry.Count();loopCnt++)
+		{
+		CUninstalledPackageEntry* uninstallPkg= uninstalledPkgEntry[loopCnt];
+		TRAPD(err,UninstalledSisPackages::RemoveL(*uninstallPkg));
+		if(err==KErrPermissionDenied)
+			{
+			User::LeaveIfError(KErrPermissionDenied);
+			}
+		}
+
+	CleanupStack::PopAndDestroy(&uninstalledPkgEntry);
+	}
+