Hallo,
kann mir villeicht einer mal einen Tipp geben, wie ich die Quick Launch auslesen kann und alle dort eingetragen Verknüpfungen anzeigen lassen kann auf einer Form.
Danke im Voraus.
Hallo sven88,
ob es eventuell eine .NET-eigene Methode dafür gibt kann ich nicht sagen, aber ich würde mir einfach alle Verknüpfungen aus dem 'Quick Launch'-Verzeichniss (%appdata%\Microsoft\Internet Explorer\Quick Launch) holen und entsprechend weiterverarbeiten:
DirectoryInfo directoryInfo = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\Microsoft\Internet Explorer\Quick Launch");
FileInfo[] files = directoryInfo.GetFiles();
foreach (FileInfo file in files)
{
// Verknüpfung behandeln
}
MfG
Philip
Gut so weit komme ich auch noch, aber das sind ja alles Verknüpfungen und ich möchte gerne das Bild auch mit nehmen von der Verknüpfuing. Wie kann ich das denn ansprechen?
Hallo sven88,
wie man Informationen aus Verknüpfungen ausliest wurde schon einige Male besprochen. Bitte benutze die Forumssuche (ein möglicher Suchbegriff ist shortcut.exe) und poste die besten Treffer hier. Vielen Dank!
herbivore
So habe mal folgende Funktion geschreiben:
public string pfad(string ink)
{
string fileName = ink;
string fPath = System.IO.Path.GetFullPath(fileName);
return fPath;
}
Wenn ich dann einen openFiledialog benutze dann bekomme ich den Pfad:
private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.ShowDialog();
textBox1.Text = pfad(openFileDialog1.FileName);
}
aber wenn ich das benutze nicht:
DirectoryInfo directoryInfo = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\Microsoft\Internet Explorer\Quick Launch");
FileInfo[] files = directoryInfo.GetFiles();
foreach (FileInfo file in files)
{
string test = file.FullName;
listBox1.Items.Add(pfad(test));
}
Jetzt frage ich mich wiso. Liegt das an dem openFileDialog oder an dem was ich geschreiben habe?
Hallo sven88,
damit Path.GetFullPath funktioniert, muss Environment.CurrentDirectory richtig gesetzt sein. Das macht OpenFileDialog automatisch.
Ich verstehe aber nicht, warum du GetFullPath überhaupt benutzen willst, denn in FileInfo file
sind ja schon alle Informationen (inkl. des vollständigen Pfads) enthalten. Schau einfach in die :rtfm: Doku.
herbivore
s. z.B. Ziel einer Verknüpfung ermitteln bzw. dessen "Verknüpfungen"...
Das Zeil der Verknüpfung habe ich jetzt durch das abschneiden des ".lnk" ereicht. und lade die jetzt immer in ein menustrip rein bzw in ein untermenü. Jetzt noch eine weitere Frage: Wenn ich die da reinlade steht immer als Text und als Name das gleiche, aber als name wollte ich gerne dann den File.Name oder hier "Hallo". aber der zeicht mir immmer den Pfad an, kann man das ändern oder ist das bei denen so?
ToolStripMenuItem ss = new ToolStripMenuItem(test, null, MyItem_Click, "Hallo");