it-swarm.com.de

Festgelegte Taskleistensymbole ändern (Windows 7)

Ich möchte das in der Windows 7-Taskleiste angezeigte Symbol nicht anpassen. Wenn meine App ausgeführt wird, kann ich dies durch Ändern des Hauptfenstersymbols tun, aber wenn die App angeheftet ist, wird das Exe-Symbol angezeigt.

Wie kann ich das Taskleistensymbol für meine App auf ein anderes als das im Exe eingebettete Symbol einstellen?

Nicht ausprobiert, diese Lösung kann funktionieren, sieht aber schmutzig aus.


Bearbeiten:

Unsere App wird einmal kompiliert, aber abhängig von der Konfigurationsdatei sind Funktionen aktiviert oder nicht, es handelt sich also um ein Produkt oder ein anderes. Wir möchten nicht für jedes Produkt ein Exe erstellen.

Die obige Lösung funktioniert möglicherweise nicht, da viele Instanzen meiner App in verschiedenen Pfaden installiert werden können (sodass am Ende derselbe Exe-Dateiname, aber unterschiedliche Symbole vorhanden sind!). Ist dieser Registrierungsschlüssel schlecht gestaltet oder fehlt mir etwas?

26
François

EDIT Die Informationen unten sind etwas veraltet. Alle neuen Windows 7-Bits sind jetzt als verwaltete API verfügbar. Sie finden sie hier: http://code.msdn.Microsoft.com/WindowsAPICodePack

Es gibt eine Artikelserie über die neue Taskbar-API des Debugging-Gurus Sasha Goldshtein . Sie sollten sich die Overlay-Symbole und die Fortschrittsbalken-API ansehen.

Sie können den Beispielcode von Windows 7 Taskbar Developer Resources unter Microsoft Code herunterladen. Was Sie suchen, ist das IMClient-Beispiel:

Das IMClient-Beispiel veranschaulicht, wie Taskleiste-Overlay-Symbole und Taskleiste Fortschrittsbalken können ein .__ leuchten. stattdessen die Taskleistenschaltfläche der Anwendung sich auf einen zusätzlichen Dialog oder .__ verlassen. auf einem Symbol in der Systembenachrichtigung Bereich (Fach).

alt textalt textalt text

Ich glaube, das sollte Ihnen helfen, das zu erreichen, was Sie wollen.

23
Igal Tabachnik

Wenn Sie eine Anwendung an die Taskleiste anheften, wird einfach eine Verknüpfung im folgenden Verzeichnis erstellt:

C:\Users\<User Name>\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar

Sie sollten in der Lage sein zu ermitteln, wo sich die Verknüpfung befindet (dh Bekannte Ordner abrufen und von dort aus arbeiten. BenutzerAppData sollte die sein). Wenn Sie dann P/Invoke (IShellLink) verwenden, können Sie das Symbol ändern, das von der Verknüpfung verwendet wird. Möglicherweise muss der Computer neu gestartet werden, dies sollte jedoch funktionieren.

Wenn Sie die Umschalttaste gedrückt halten, während Sie mit der rechten Maustaste auf die angeheftete Anwendung klicken, und Eigenschaften auswählen, wird die Schaltfläche Symbol ändern für die Verknüpfung angezeigt. Dies ist im Grunde das, was Sie mit Code emulieren müssen.

Alle diese Dinge können definitiv mit Code ausgeführt werden, aber ob Sie der Meinung sind, dass sie besser sind als die Registrierungseinstellung, liegt bei Ihnen.

16
David Wengier

Soweit ich das beurteilen kann, können Sie aus irgendeinem Grund das Symbol für ein Programm, das bereits an der Taskleiste befestigt ist, nicht ändern. Dazu lösen Sie einfach das Programm, suchen es im Startmenü und klicken Sie mit der rechten Maustaste auf das Symbol "Eigenschaften". Verbinden Sie ihn dann erneut mit der Taskleiste und das neue Symbol wird angezeigt!

1
rob harvey

Ich weiß nicht, ob ich dein Problem verstehe, aber ..

Wenn Sie eine Anwendung erstellen und die Symboleigenschaft des Hauptfensters einfügen, wird dieses Symbol auch in der Taskleiste angezeigt. Wenn Sie es jedoch an die Taskleiste anheften, verschwindet dieses Symbol. Habe ich recht? Wenn ja, gehen Sie zu den Projekteigenschaften und setzen Sie auf der Registerkarte "Anwendung" das gewünschte Symbol für das Exe. Jetzt wird dieses Symbol in der Taskleiste angezeigt, wenn es fixiert ist.

Ich verwende dasselbe Symbol für beide Dinge: P

1
Jesus Rodriguez

Sie können dies tun, indem Sie die Bibliothek "Windows 7 Bridge" verwenden, die auf der "Windows Vista Bridge" basiert. 

Hierbei handelt es sich um verwaltete Wrapper für alle systemeigenen Funktionen von Vista und Windows 7. 

Mehr Infos finden Sie hier

1
rein

Ich kann das leider momentan nicht testen, aber vielleicht könnte das Problem durch das Erstellen einer normalen, guten alten Verknüpfung gelöst werden. Eine Verknüpfung zur App erstellen, das Symbol ändern und dann die Verknüpfung statt der App selbst anheften?

Überprüfe, wann ich den nächsten Zugriff auf meinen Windows 7-Computer erhalten kann ...

0
Jon Grant

Schau mal auf dieses Blog . Er schreibt eine Reihe von Blogeinträgen zum Programmieren der Windows 7-Taskleiste, sodass Sie möglicherweise in die richtige Richtung weisen.

0

Klicken Sie mit der rechten Maustaste auf das Pinning-Symbol, im Popup sehen Sie den Programmtitel. Klicken Sie dort erneut mit der rechten Maustaste und gehen Sie zu den Eigenschaften. Dort können Sie das Symbol ändern, indem Sie auf die Schaltfläche "Symbol ändern" klicken. Für mich war ein Neustart erforderlich, um die Änderungen abzuschließen.

0
Ephraim