Hallo
Ich muss kurz ausholen: Ich habe selber ein Progamm programmiert, welches unter anderem die Taskleiste leert (Registry Key löschen, Ordner mit Verknüpfungen leeren) und dann bestimmte Symbole bzw. Programme anpinnt. Dazu setze ich das Programm syspin ein.
Dies funktioniert soweit, ausser beim Windows Explorer. Es wird zwar das Symbol erstellt, aber die Verknüpfung ist nicht korrekt, so dass beim Draufklicken ein weiteres Explorer-Symbol in der Taskleiste erscheint, in welchem dann der Explorer gestartet ist. Ich habe dann die funktionierende Original-Verknüpfung vorher gespeichert (der Typ und das Ziel sind anders als mit der von syspin erstellten) und wollte nun mit meinem Programm folgendes tun: Erstellen des Symbols mit syspin, danach Kopieren der korrekten Verknüpfung in den Taskbar-Ordner per Überschreibmodus.
Nun kommt das Mysterium: Setze ich in meinem Programm den Kopierbefehl (via CMD /Y) direkt nach dem Anpinnen des Symbols ab (sogar mit 1,5s Pause dazwischen), wird zwar die Verknüpfung korrekt kopiert, aber es wird immer noch ein neues (bzw. zweites Explorer-Symbol) in der Taskleiste erstellt, wenn ich darauf klicke. Wenn ich dann noch einmal von Hand die Verknüpfung kopiere, funktioniert es plötzlich. Dasselbe ist der Fall, wenn ich in meinem Programm den Kopierbefehl nicht direkt nach Anpinnen des Symbols (via syspin) gebe, sondern erst am Ende der kompletten Befehlskette (d.h. ich erstelle erst noch die weiteren Symbole in der Taskleiste per syspin und erst nach dem letzten erfolgt der Kopierbefehle für die .lnk-Datei für den Explorer).
Für mich ist schleierhaft, wie es sein kann, dass die korrekte Verknüpfung vorhanden ist und es trotzdem nicht funktioniert, wenn der Kopierbefehl zu kurz auf Erstellung des Symbols folgt. Hat da jemand eine logische Erklärung dafür?
Beste Grüsse
Thomas