2012-03-13 3 views
1

Je suis sous Windows XP et je veux lire avec C# tous les éléments Quicklaunch (dans la barre des tâches à côté du bouton de la fenêtre).C# Obtention des éléments de lancement rapide de Windows (Windows XP)

Je trouve la "solution" pour lire tous les fichiers de "C: \ Documents and Settings \ USER \ Application Data \ Microsoft \ Internet Explorer \ Quick Launch"

Mais je veux le même ordre que dans le barre de lancement rapide.

Quelqu'un peut-il m'aider?

acclamations

Répondre

1

L'ordre de tri de lancement rapide est enregistré en tant que TaskbarWinXP valeur binaire ici:

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Streams \ Desktop

Vous auriez besoin d'ingénierie inverse sur le binaire obtenir l'ordre de tri.

+0

Merci. :) Mais je ne sais pas comment décrypter ce contenu .. – cyptus

+0

Vous pourriez essayer d'enregistrer la valeur, puis de réorganiser les éléments de lancement rapide. En comparant la nouvelle valeur, vous pourriez être en mesure de le comprendre, mais ce ne sera pas facile. – 79E09796

+0

votre droit, je le pense aussi. Je vais essayer ça plus tard.Après un petit coup d'oeil sur le contenu, j'ai vu que je peux lire les noms de fichiers et quelques chemins d'accès. Peut-être qu'il ne sera pas très difficile de lire la position. Je vais poster, si je suis avec succès. – cyptus

1

emplacement du dossier de lancement rapide

Si l'utilisateur a choisi d'ajouter le raccourci de lancement rapide, nous devons déterminer l'emplacement du dossier dans lequel nous allons créer le raccourci. La fonctionnalité de la barre de lancement rapide fait partie d'Internet Explorer et l'emplacement du dossier pour les raccourcis de lancement rapide fait partie des données d'application d'Internet Explorer. Il n'y a pas de dossier de lancement rapide "Tous les utilisateurs", de sorte que le raccourci de lancement rapide est toujours ajouté au dossier de lancement rapide de l'utilisateur actuel, même si l'utilisateur choisit d'installer "Tout le monde".

La méthode System.Environment.GetFolderPath que nous avons utilisée pour trouver le bureau de l'utilisateur actuel peut également nous indiquer l'emplacement du dossier "Application Data" des utilisateurs actuels. Nous devons coder en dur l'emplacement dans le dossier Application Data du dossier Quick Launch. Dans le projet de démonstration, j'ai fait de l'emplacement du dossier Quick Launch une propriété de la classe ShortcutsInstaller, de sorte que je n'ai pas besoin de répéter le code d'emplacement à plusieurs endroits. Le code pour l'emplacement du dossier de lancement rapide est:

private string QuickLaunchFolder 
{ 
    get 
    { 
    return 
     Environment.GetFolderPath(
     Environment.SpecialFolder.ApplicationData) 
     + "\\Microsoft\\Internet Explorer\\Quick Launch"; 
    } 
} 

Vous pouvez aller à ce lien, il vous guidera sur Link


Une autre façon serait simple et stable.

string apploc = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); 
string []files =Directory.GetFiles(@[email protected]"\Microsoft\Internet Explorer\Quick Launch"); 
//Loop the string "files" in which every way you want. 
for(int i=0 ; i<files.Length; i++) 
{   MessageBox.Show(files[i]);  } 

J'espère que c'est ce dont vous avez besoin.

+0

oui agréable - mais je ne veux pas créer un raccourci. je veux lire tous les raccourcis existants dans le bon ordre (pas l'ordre dans l'explorateur de fichiers, je veux l'ordre comment il est dans la barre des tâches.) – cyptus

+0

Essayez le bas. Je suppose que dats ce que vous voulez. – MDMalik

+0

Bonjour, merci d'avoir répondu. Non, ce n'est pas ce dont j'ai besoin. C'est exactement ce que j'ai écrit dans le premier message. Je sais que je peux trouver les applications là-bas, mais je le veux dans le bon ordre! Si je lis les fichiers du répertoire je n'ai pas le même ordre que les icônes de gauche à droite dans ma barre des tâches .. – cyptus