Rendre visible ou invisible une application (icone) (codewarrior)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 18 476 fois - Téléchargée 29 fois

Contenu du snippet

Ce code vous permettra de rendre visible ou invisible une application symbolisée par son icone.

Etant donné que ce code résulte d'une analyse personnelle de la table du launcher du Palm (aucune doc dispo), je ne garantis pas que cette procédure fonctionne sur tous les OS.

Source / Exemple :


Boolean SetVisible (char* AppName, Boolean Visible)
{
    DmOpenRef dbP;
    char *recordP;
    MemHandle	recordH;	
     LocalID dbIDP;
     UInt16 MaxPosition=0, i, lng;
     Boolean FoundIt=false;
 	
     // Recherche de la table de l'application launcher
     dbIDP= DmFindDatabase (0,"psysLaunchDB");
     if (!dbIDP) return false;
 	
    dbP = DmOpenDatabase (0, dbIDP, dmModeReadWrite);
    if (!dbP) return false;
	
    MaxPosition = DmNumRecords (dbP);
	
    for (i=0;i<MaxPosition && !FoundIt ;i++)
    {
        recordH = DmGetRecord (dbP, i);
        if (recordH != NULL)
        {			
            recordP = MemHandleLock (recordH);
            // recordP+18 = Nom de l'application
            if (recordP!=NULL && (!StrCompare (recordP+18, AppName)))
            {
                // recordP[102] = Statut visible de l'application
                lng = recordP[102];
                FoundIt = true;
                if (Visible)
                {
                    if (lng==4 ||lng==0) DmWrite(recordP, 102, "\4", 1);
                }
                else
                {
                    if (lng==4 ||lng==0) DmWrite(recordP, 102, "\0", 1);
                }
            }
            MemPtrUnlock (recordP);
            DmReleaseRecord (dbP, i, false);
        }
    }
    DmCloseDatabase (dbP);
	
    return FoundIt;

}

Conclusion :


La fonction renvoie vrai si l'application à bien été trouvée et modifiée, sinon ...

A voir également

Ajouter un commentaire Commentaire
bob3000 Messages postés 406 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 2 octobre 2004
27 mai 2003 à 05:11
cool! merci!

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.