Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Taskleiste für den zweiten Bildschirm
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

Taskleiste für den zweiten Bildschirm

beantworten | zitieren | melden

Hallo Community,
ich schreib seit einiger Zeit an einer Taskleiste für ein zweiten Bildschirm, die man wie die normale Taskleiste nutzen kann, auch wenn der primäre Bildschirm belegt ist (wie z.B. wenn man spielt) oder man einfach nicht dauern auf den Primären Bildschirm wechseln möchte. Das Projekt ist inzwischen soweit vorangeschritten, dass ich es euch nicht vorenthalten will .

Die aktuelle Version ist die Version 0.8.0, die Hauptelemente der Taskleiste sind bereits integriert und es geht an den Feinschliff, Bugfixing und einige kleine Features.
Kurze Übersicht der Features:
  • die Startmenü Programme und Buttons werden angezeigt und können normal verwendet werden
  • die Schnellstartprogramme werden vollständig angezeigt und können genutzt werden
  • offene Fenster werden mit korrektem Icon angezeigt und können minimiert, maximiert und geschlossen werden
  • Fenster können ausgeblendet werden
  • es werden Vorschaufenster zu den Programmen angezeigt (Vista+Win7)
  • es werden CPU und RAM Auslastung angezeigt und können auch ausgeblendet werden
  • die Taskleiste ist zur Zeit nur WinVista und Win7 kompatibel, WinXP kommt demnächst.
  • die Taskleiste kann auf den primären oder sekundären Bildschirm angezeigt werden
  • die Taskleiste reserviert den Platz den sie benötigt
  • und einiges mehr
Es bleibt noch zu sagen, dass die EXE und die DLL im gleichen Ordner sein müssen, sowie die Taskleiste, damit sie richtig funktioniert, mit Administrationsrechten ausgeführt werden muss. Weiterhin kann man per Rechtsklick, auf die Taskleiste, Einstellungen wie WinXP/WinVista/Win7 oder das Ausblenden von Fenstern regeln kann. Ich hoffe euch nutzt dieses Projekt etwas, wenn ihr Fehler findet oder Verbesserungsvorschläge/-wünsche habt könnt ihr sie mir gern mitteilen . Der Screenshot zeigt die Taskleiste im Build 0.8.0...

Den Download gibt es am Ende vom dritten Post als Anhang.

Grüße Mazo

//edit 05.11.09: Eingangstext aktualisiert und ergänzt
Dieser Beitrag wurde 14 mal editiert, zum letzten Mal von Mazo am .
Attachments
private Nachricht | Beiträge des Benutzers
michlG
myCSharp.de - Experte

Avatar #avatar-2909.png


Dabei seit:
Beiträge: 3.430
Herkunft: Naturns - Südtirol - Italien

beantworten | zitieren | melden

Hi Mazo,

gute Arbeit....
Das ist wirklich ein tolles Tool.
Es ist nur blöd dass ich nur einen Bildschirm habe.... X(

Besonders die Ram bzw. CPU-anzeige ist praktisch...

Vielen Dank

mfg
MichlG
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Mazo,
Zitat
vllt. kann jemand vom Team das Archiv mal als Anhang ranhängen
bitte sehr:

herbivore

Bisherige Downloads: Taskleiste_0.7.1.0.zip (1,21 MB, 404 mal heruntergeladen)

Aktuelle Version 0.8.0.509 vom 5.11.2009:
Attachments
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Hallo Mazo,

ja, das ist wirklich ein sehr praktisches Tool.

Allerdings gelingt es mir nicht, deine Taskleiste zu verschieben - die "Originale" und deine werden immer auf dem Primärmonitor angezeigt. Auch wäre es praktisch, sie auf eine Zeile reduzieren zu können.

Außerdem treten manche Probleme mit der Anzeige der Buttons auf:
  • Die Reihenfolge ändert sich gelegentlich
  • Ordnerfenster werden nicht angezeigt
  • Tooltips (auch die, die von der Taskleiste selbst angezeigt werden) sowie Menüs und Dialoge erzeugen Einträge in der Liste der geöffneten Programme (siehe Anhang)

Von Vorteil wäre es auch, wenn die Taskleiste den Platz reservieren würde, den sie benötigt (Fenster verankern)

Angenehm wäre es auch, wenn man die Anzeige der RAM/CPU - Auslastung unterdrücken und den verfügbaren Platz der QuickStartIcons angeben könnte.

Ansonsten ist deine Taskleiste auf dem besten Weg, in meinen Autostartordner zu wandern.

//EDIT:
Anhang verkleinert

Gruß
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von winSharp93 am .
Attachments
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Danke winSharp93 für dein Feedback.
Zitat
Allerdings gelingt es mir nicht, deine Taskleiste zu verschieben - die "Originale" und deine werden immer auf dem Primärmonitor angezeigt. Auch wäre es praktisch, sie auf eine Zeile reduzieren zu können.
Warum die Taskleiste bei dir nicht auf dem sekundären Bildschirm angezeigt wird ist mir auch unklar^^ aber ich werd im Kontextmenü eine Postionsauswahl einfügen, bis dahin kannst du ja die orginale verschieben :D. Die Reduzierung auf eine Zeile werd ich eventuell auch in Angriff nehmen, allerdings erst nach den anderen Problemen.
Zitat
Die Reihenfolge ändert sich gelegentlich
Dass die Reihnfolge sich ab und zu ändert ist mir bekannt und ich arbeite daran eine gute Lösung zu finden.
Zitat
Ordnerfenster werden nicht angezeigt
Wenn du mit Ordnerfenstern die Fenster des Explorers meinst, wundert mich dies, da diese bei mir angezeigt werden (bis auf die Icons)
Zitat
Tooltips (auch die, die von der Taskleiste selbst angezeigt werden) sowie Menüs und Dialoge erzeugen Einträge in der Liste der geöffneten Programme (siehe Anhang)
ohh ha das ist lustig - ich schau mal was ich da hinbekomme
Zitat
Von Vorteil wäre es auch, wenn die Taskleiste den Platz reservieren würde, den sie benötigt
Hab ich schon mal probiert ging allerdings nicht so wie ich wollte^^, ich versuch es mit einzubauen.
Zitat
Angenehm wäre es auch, wenn man die Anzeige der RAM/CPU - Auslastung unterdrücken und den verfügbaren Platz der QuickStartIcons angeben könnte.
Diese Kleinigkeit werde ich integrieren, ist ja nicht schwierig.
Ich programmier mal ein bisschen rum und poste neue versionen hier, sobald sie fertig sind.
Mazo
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Mazo am .
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

So ich hab ein bisschen weiter daran rumgebastelt:

- Ausblenden der Auslastung ist nun möglich (Kontextmenü)
- Änderung der Breite der Schnellstartleiste möglich (simple per schieben)
- Einstellung möglich, um Taskleiste auf anderen Bildschirm anzuzeigen (Kontextmenü)
- Tooltips, Dialog etc. werden nun nichtmehr als Programm angezeigt
- Die Reihnfolge der angezeigten Tasks wechselt nun nicht mehr

Mazo
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Ah, wunderbar!!!

Leider kann ich die Taskleiste immer noch nicht auf den zweiten Bildschirm verschieben - bei Klick auf den entsprechenden Kontextmenüeintrag tut sich gar nichts. Vielleicht muss ich dazu sagen, dass ich Monitor 2 als Primären Monitor einsetze und die Taskleiste somit auf Monitor 1 platzieren möchte.

Leider werden nun einige Programme nicht mehr angezeigt - z.B. Photodraw (Siehe Anhang). Liegt das vielleicht an MDI? Auch das Erinnerungsfenster von Outlook ist davon betroffen.

Die Explorerfenster werden immer noch nicht angezeigt (Siehe Anhang). Vielleicht liegt es daran, dass ich die Option "Ordnerfenster im eigenen Prozess starten" aktiviert habe.

Auch tritt das Problem auf, dass die Einstellungen zum Ausblenden der CPU/RAM Auslastung sowie zur Verkleinerung nach einem Neustart der Anwendung verloren sind.

Die Hintergrundfarbe des Kontextmenüs ist relativ dunkel - man sieht nicht, ob z.B. ein Haken vor "Taskleiste fixieren" gesetzt ist.

Dann habe ich noch eine Exception für dich - scheint jedoch am GlassButton zu liegen:
Unbehandelte Ausnahme in der Anwendung
[...]
Der Thread wurde abgebrochen.

************* Ausnahmetext **************
System.Threading.ThreadAbortException: Der Thread wurde abgebrochen.
   bei System.Windows.Forms.Control.get_Focused()
   bei Glass.GlassButton.DrawButtonForeground(Graphics g)
   bei Glass.GlassButton.OnPaint(PaintEventArgs pevent)
   bei System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs)
   bei System.Windows.Forms.Control.WmPaint(Message& m)
   bei System.Windows.Forms.Control.WndProc(Message& m)
   bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
   bei System.Windows.Forms.Button.WndProc(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
(Da, wo eigentlich der Energiesparmodus Button wäre, war nur ein rotes Kreuz sichtbar)

Gruß
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von winSharp93 am .
Attachments
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Hallo winSharp93,
zuerst die Einstelllungen werden noch nicht gespecihert aber das bau ich noch ein , das einige Fenster nicht mehr angezeigt werden ist ärgerlich ich schau mal nach einer Lösung... Warum es bei dir nicht mit dem zweiten Bildschirm geht ist für mich unverständlich^^ ich habe zwei Freunde das Testen lassen und es hat funktioniert... ich werde noch was einbauen womit man die Taskleiste "frei" verschieben kann evtl geht es dann bei dir. das mit den explore Fenstern werd ich auch ausprobieren ob es an dem eigenen Prozess liegt und nach einer Lösung schauen (allerdings nicht mehr Heute )
private Nachricht | Beiträge des Benutzers
Hunv
myCSharp.de - Member

Avatar #avatar-3429.png


Dabei seit:
Beiträge: 193

beantworten | zitieren | melden

Funktioniert auch unter WinXP!!!
(Man muss nur den Quick Launch-Ordner "manuell" erstellen. Sollte aber nicht das Problem sein den entsprechenden XP-Ordner vom Programm ermitteln zu lassen...
Außerdem sind einige Links der Buttons im Startmenü unter XP nicht vorhanden)

Soweit ich die Taskleiste beurteilen kann: Super Idee und Sache!

Was ich noch gut finden wäre, dass sich ein Programm auch minimieren lässt (durch einen 2. Klick auf den Taskbar-Button).
Außerdem fehlt mir das Kontextmenü der Taskbar-Buttons (z.B. rechten Mausklick => schließen).

Edit:
Was mir gerade auch noch aufgefallen ist: Programme mit "showintaskbar = false" werden in deiner Taskbar angezeigt
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Hunv am .
Visit me @ www.beremote.net
private Nachricht | Beiträge des Benutzers
el_panter
myCSharp.de - Member



Dabei seit:
Beiträge: 395
Herkunft: Sömmerda

beantworten | zitieren | melden

wenn das teil in xp wirklich läuft (und auch dort ihrgenwann fehlerfrei und ausgereifter) wäre das endlich der ausschlaggebende grund mir auch privat einen zweiten monitor anzuschaffen.

eine geniale idee die für mich schon fast in den thread "Softwareperlen" gehört

einfach mal abwarten wie es weitergeht

MfG Paul
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Hallo hunv und el_panter,
zu erst Danke für euer Feedback...
Ansich gibt es nich viele stellen die geändert werden müssen damit die Taskleiste unter XP läuft...
Allerdings gibt es neben den Startmenü Programmen und den Schnellstartprogrammen noch die nur teilweise funktionierenden Buttons im Startmenü für die ich kein System da habe um diese richtig zu konfigurieren. Ich werde es vermutlich auch noch in angriff nehmen die Taskleiste XP-Ready (:P) zu machen.
Zurzeit hab ich noch kleine Schwierigkeiten mit der Verankerung und dem Schließen von Programmen, daher noch keine neue Version, in dieser werden aber neben diesen zwei Features auch die Speicherung der Einstellungen, eine weiterer versuch alle Fenster richitg anzuzeigen, sowie die Möglichkeit im Startmenü Ordner wieder zu schließen vorhanden sein.

Mazo
private Nachricht | Beiträge des Benutzers
Hunv
myCSharp.de - Member

Avatar #avatar-3429.png


Dabei seit:
Beiträge: 193

beantworten | zitieren | melden

Oberste Button "Benutzername" muss nach %userprofile% (das verlinkt z.B. nach c:\dokumente und einstellungen\username\ - könnte auch unter vista gehen, dann muss man nicht zischen XP und vista differenzieren)

Button "Dokumente" auf den Pfad der in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Personal steht

Bilder, der Pfad der in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\My Pictures steht

Musik, der Pfad der in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\My Music steht

Spiele, ka, was das überhaupt sein soll vllt. Start=>Programme=>Spiele?

Suchen, kann ich auch nicht weiterhelfen

Computer, funktioniert so, wie es ist

Netzwerk, geht ebenfalls

Verbindung herstellen, netzlaufwerk verbinden?

Systemsteuerung, geht so

Standartprogramme, wenn es der Ordner "Programme" sein soll: %programfiles%

Hilfe, %systemroot%\pchealth\helpctr\binaries\HelpCtr.exe



Ich hab nach ner zeit folgende Fehlermeldung erhalten:
Danach wurden CPU-Auslastung, RAM und die Uhr nicht mehr aktualisiert.

System.ArgumentException: IComparer (or the IComparable methods it relies upon) did not return zero when Array.Sort called x. CompareTo(x). x: 'Win32.EnumWindowsItem'  x's type: 'EnumWindowsItem' The IComparer: 'System.Array+FunctorComparer`1[Win32.EnumWindowsItem]'.
   at System.Collections.Generic.ArraySortHelper`1.QuickSort[TValue](T[] keys, TValue[] values, Int32 left, Int32 right, IComparer`1 comparer)
   at System.Collections.Generic.ArraySortHelper`1.Sort[TValue](T[] keys, TValue[] values, Int32 index, Int32 length, IComparer`1 comparer)
   at System.Collections.Generic.ArraySortHelper`1.Sort(T[] items, Int32 index, Int32 length, IComparer`1 comparer)
   at System.Array.Sort[T](T[] array, Int32 index, Int32 length, IComparer`1 comparer)
   at System.Collections.Generic.List`1.Sort(Comparison`1 comparison)
   at Taskleiste.TaskleisteMain.timerZeit_Tick(Object sender, EventArgs e)
   at System.Windows.Forms.Timer.OnTick(EventArgs e)
   at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Taskleiste
    Assembly Version: 0.5.0.2
    Win32 Version: 0.5.0.2
    CodeBase: file:///C:/Dokumente%20und%20Einstellungen/Kriss/Desktop/Taskleiste.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
GlassButton
    Assembly Version: 1.2.0.36978
    Win32 Version: 1.2.0.36978
    CodeBase: file:///C:/Dokumente%20und%20Einstellungen/Kriss/Desktop/GlassButton.DLL
----------------------------------------
System.Configuration
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Interop.Shell32
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Dokumente%20und%20Einstellungen/Kriss/Desktop/Interop.Shell32.DLL
----------------------------------------
System.Management
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Management/2.0.0.0__b03f5f7f11d50a3a/System.Management.dll
----------------------------------------


Wenn du mich in ICQ adden würdest, könnte ich dir da weiterhelfen
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Hunv am .
Visit me @ www.beremote.net
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

So ich poste jetzt mal die neue Version - allerdings immer noch ohne Platz reservieren - wer da helfen kann: Problem mit Platz reservieren.
Neue Feauters sind:
- die Taskleiste speichert nun die Einstellungen
- Prozesse werden korrekt angezeigt
- Verbesserung der Performace
- Die Startmenüordner wurden überarbeitet
- Fenster können nun per Rechtsklick geschlossen werden
- Fenster die den Focus haben können nun durch einen weiteren Klick geschlossen werden
- die Schnellstartleiste sollte nun auch unter XP richtig angezeigt werden
- ein Fehler in der Anzeige der Auslastung wurde behoben

Zum XP kompatibel machen:
Ich werd Kontakt mit Hunv aufnehmen und die Taskleiste XP kompatibel programmieren, allerdings wird dies auch noch ein bisschen dauern^^

Zu den Angezeigten Programmen:
Ja es werden Programme mit ShowinTaskbat = false angezeigt , ich hoffe tool tips infofenster etc werden nicht mehr angezeigt und Outlook Kalender Photoshop und ähnliche werden hoffentlich korrekt angezeigt. Ich hab es mit allen Programmen die ich hab getestet wo ich mir Probleme vorstellen konnte und diese behoben...

Zur Taskleisten darstellung:
Es kann zu Problemen in der Taskleisten Position kommen wenn die Orginale Taskleiste auf "Taskleiste immmer im Vordergrund halten" gesetzt ist...

EIne Frage geht bei euch das wechseln auf den 2ten Bildschirm oder gibt es nochjemanden wie winSharp93 der damit Probleme hat?
private Nachricht | Beiträge des Benutzers
Hunv
myCSharp.de - Member

Avatar #avatar-3429.png


Dabei seit:
Beiträge: 193

beantworten | zitieren | melden

Hab dich geadded.

Ich habe kein Problem den Anzeigebildschirm zu wechseln.
Visit me @ www.beremote.net
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Zitat von Mazo
Eine Frage geht bei euch das wechseln auf den 2ten Bildschirm oder gibt es nochjemanden wie winSharp93 der damit Probleme hat?
Jetzt funktioniert es auch bei mir.
Allerdings wird das Startmenü nicht mehr richtig angezeigt, wenn sich die Leiste auf dem zweiten Bildschirm angezeigt wird: Sie blitzt zweimal kurz auf (allerdings ca. ihre halbe Höhe zu hoch) und verschwindet sofort wieder.

Was vielleicht nicht schlecht wäre, wäre eine Möglichkeit, manuell bestimmte Programme dauerhaft aus der Leiste zu "verbannen" - bei mir tauscht nämlich ein "Geisterfenster" des ATI CCCs auf.
Was wäre, wenn Fenster ohne Icon einfach ignoriert werden würden? Meiner Ansicht nach macht das die originale Taskleiste auch so?!?

Falls es dir langweilig werden sollte ( ), kannst du ja noch die Vorschaubilder des WDM hinzufügen.

Ich freue mich schon auf das nächste Release!!!
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Hallo winSharp93,
es freut mich zu hören das die Taskleiste jetzt bei dir auch den Bildschirm wechselt
Im nächsten Release wird erstmal die XP Kompatiblität hergestellt werden und der Fehler, dass das Startmenü zu hoch angezeigt wird gefixt...
Zitat
Was wäre, wenn Fenster ohne Icon einfach ignoriert werden würden?
Mein Problem ist das ichh zur Zeit die Icons aus den Prozessen die laufen hole da aber nicht alle Fenster herbekomme (nur die Hauptfenster) und ich daher nicht sagen kann ob die Anwendung nun ein Icon hat oder nicht. Daher auch das ständige Problem mit Fenstern die zuviel oder zuwenig angezeigt werden... Aber ich grab mich immer tiefer in WIN32 rein und werde evtl. dafür auch noch eine Lösung finden. Bis dahin ist durchaus annehmbar, dass ich ein Fenster einbaue womit man Fenster ignorieren kann, wo dann jeder Fenster eintragen kann.
Zitat
kannst du ja noch die Vorschaubilder des WDM hinzufügen
Wi das funktioniert hab ich schonmal irgendwo gelesen , das sollte nciht soooo schwierig werden, mal sehen ob ich Zeit finde.

Grüße Mazo
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Mazo am .
private Nachricht | Beiträge des Benutzers
Aurion
myCSharp.de - Member

Avatar #avatar-2535.gif


Dabei seit:
Beiträge: 110
Herkunft: Berlin

beantworten | zitieren | melden

Ich hatte das Programm gestern auch mal bei mir ausprobiert, jedoch hatt es recht stark meinen Prozessor ausgelastet.
Ist das normal?
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Hallo Aurion,
ich kann nur von meinem System sprechen... da steigt bei einer Aktualiersierung meine Prozessorauslastung von ca 10-15% auf 20-25% allerdings arbeite ich mit einem E6400, ich weiß nicht inwiefern das Programm ältere Prozessoren streßt. Ich werde den Zeitraum zwischen den Aktualiesierungen sicher noch manuell einstellen lassen (zur Zeit sekündilch ist vllt bisschen oft) und die Routine auch nochmal durchschauen nach Dingen die ich streichen kann
//edit: was mit ncoh eingefallen ist die NAzeige der Taskbar zeigt immer den Höchstwert an bei der Aktualiesierung und kann daher ein bisschen ungenau sein

Bis dahin hier nochmal eine neue Version (0.6.0.0)
- XP Kompatiblität hergestellt (über das Kontextmenü auswählbar)
- "Vorschaufenster" werden nun angezeigt (Vista Feature)
- ein paar Fehler wurden behoben (und hoffentlich keine neuen hinzugefügt )

@winSharp93: ich hab kein Grund gefunden das das Startmenü falsch angezeigt wird hast dud eine echte Taskleiste vllt auf immer im Vordergrund halten?
Dieser Beitrag wurde 4 mal editiert, zum letzten Mal von Mazo am .
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Ah, die Taskleiste wird immer besser - wunderbar!!!

Leider wieder eine Exception (tritt immer auf, wenn eine Vorschau geschlossen werden soll):
Zitat
Unbehandelte Ausnahme in der Anwendung
[...]
Der Wert liegt außerhalb des erwarteten Bereichs.
[...]
************** Ausnahmetext **************
System.ArgumentException: Der Wert liegt außerhalb des erwarteten Bereichs.
bei Win32.DwmApi.DwmUnregisterThumbnail(IntPtr hThumbnail)
bei Win32.Thumbnail.Dispose(Boolean disposing)
bei System.ComponentModel.Component.Dispose()
bei System.Windows.Forms.Form.WmClose(Message& m)
bei System.Windows.Forms.Form.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

und dann noch eine (leider ohne Details, da sich die Vista - Meldung "Taskleiste hat ein Problem festgestellt..." meldete) - vielleicht hilft's trotzdem:
Zitat
Beschreibung
Stopped working

Problemsignatur
Problemereignisame: CLR20r3
Problemsignatur 01: taskleiste.exe
Problemsignatur 02: 0.5.1.0
Problemsignatur 03: 47b6f4a4
Problemsignatur 04: mscorlib
Problemsignatur 05: 2.0.0.0
Problemsignatur 06: 471ebc5b
Problemsignatur 07: 2cc1
Problemsignatur 08: 46
Problemsignatur 09: System.UnauthorizedAccess
Betriebsystemversion: 6.0.6000.2.0.0.256.1
Gebietsschema-ID: 1031

//EDIT:
Ja, meine "Original Taskleiste" ist immer im Vordergrund. Schalte ich das ab, wird das Startmenü zwar an der richtigen Position angezeigt, aber verschwindet immer noch ca. 2 Sekunden nachdem sie erschien.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von winSharp93 am .
private Nachricht | Beiträge des Benutzers
Hunv
myCSharp.de - Member

Avatar #avatar-3429.png


Dabei seit:
Beiträge: 193

beantworten | zitieren | melden

Zitat von Aurion
Ich hatte das Programm gestern auch mal bei mir ausprobiert, jedoch hatt es recht stark meinen Prozessor ausgelastet.
Ist das normal?

Ich hab nen Athlon XP 2600+ und keine nennentswerten Ausschläge, die irgendetwas beeinträchtigen. Die Auslastung verhält sich bei mir ähnlich wie bei Mazo.
Visit me @ www.beremote.net
private Nachricht | Beiträge des Benutzers
Schwermetaller
myCSharp.de - Member



Dabei seit:
Beiträge: 81
Herkunft: Bremen

beantworten | zitieren | melden

Hi Mazo,


An und für sich bin ich ganz hin und weg von deiner klasse Extrataskleiste...Allerdings hab ich da ein Problem...Und zwar ist die 2. Taskleiste mitten auf meinem 2. Monitor, und nicht am unteren Rand...So schaut das ganze aus:

Liebe Grüße

Flo
Attachments
Das Weltall ist ein Kreis, dessen Mittelpunkt überall, dessen Umfang nirgends ist.
- Blaise Pascal
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Hallo,
Zitat
Leider wieder eine Exception (tritt immer auf, wenn eine Vorschau geschlossen werden soll):
Zitat
Unbehandelte Ausnahme in der Anwendung
[...]
Der Wert liegt außerhalb des erwarteten Bereichs.
[...]
************** Ausnahmetext **************
System.ArgumentException: Der Wert liegt außerhalb des erwarteten Bereichs.
bei Win32.DwmApi.DwmUnregisterThumbnail(IntPtr hThumbnail)
bei Win32.Thumbnail.Dispose(Boolean disposing)
bei System.ComponentModel.Component.Dispose()
bei System.Windows.Forms.Form.WmClose(Message& m)
bei System.Windows.Forms.Form.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Ich bin mir über den Ursprung des Fehlers nciht ganz sicher aber ich hoffe das es die Version behebt (siehe unten).
Zitat
Problemsignatur 09: System.UnauthorizedAccess
Führst du die Taskleiste mit Adminrechten aus?
Zitat
//EDIT:
Ja, meine "Original Taskleiste" ist immer im Vordergrund. Schalte ich das ab, wird das Startmenü zwar an der richtigen Position angezeigt, aber verschwindet immer noch ca. 2 Sekunden nachdem sie erschien.
Kannst du bitte testen schnell nach öffnen des Startmenüs an die stelle auf dem annderen Bildschirm zu gehen wo sich das Startmenü öffnen würde wenn die Taskleiste dort wäre und zu schauen ob es offen bleibt? - Danke
Zitat
Allerdings hab ich da ein Problem...Und zwar ist die 2. Taskleiste mitten auf meinem 2. Monitor, und nicht am unteren Rand...
Hmm auch hier kann ich den Grund nciht erkennen, hast du vlt irgendwelche Programme die den Platz am untern Bildschirmrand reservieren? Hast du deine Orginal Taskleiste auf "Taskleiste immer im Vordergrund halten"? (wenn ja bitte deaktivieren); Sonst versuch bitte den Bildchirm zwei mal zu wechseln also auf den Primären und dann wieder auf den Sekundären. Am Code kann es meiner Meinung nach nicht liegen:

 Location = new Point(Screen.AllScreens[0].WorkingArea.X, Screen.AllScreens[0].WorkingArea.Height - 59);bzw. Location = new Point(Screen.AllScreens[1].WorkingArea.X, Screen.AllScreens[1].WorkingArea.Height - 59);
Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von Mazo am .
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Zitat von Mazo
Ich bin mir über den Ursprung des Fehlers nciht ganz sicher aber ich hoffe das es die Version behebt (siehe unten).
Ja, der Fehler tritt nicht mehr auf.
Zitat von Mazo
Hallo,
Zitat
Problemsignatur 09: System.UnauthorizedAccess
Führst du die Taskleiste mit Adminrechten aus?
Ja, ansonsten startet sie nicht - bei der neuen Version ist der Fehler aber bisher noch nicht aufgetreten.
Zitat von Mazo
Hallo,
Kannst du bitte testen schnell nach öffnen des Startmenüs an die stelle auf dem annderen Bildschirm zu gehen wo sich das Startmenü öffnen würde wenn die Taskleiste dort wäre und zu schauen ob es offen bleibt?
Ja, dann bleibt sie offen. (Zum Glück ist mein PC nicht so schnell, sodass das ohne Probleme klappte )
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

soooooo...

Ich hab nochmal ein bissel gebastelt und einige Dinge verbessert und den Inhalt, welcher sekündlich neu gerechnet wird verringert, sowie den Resharper mal rüberlaufen lassen
Hier die markantesten Änderungen:
Ver. 0.6.1.0

- das Startmenü wird nun geschlossen wenn es den Focus verliert
- das Startmenü wird nun nicht mehr als Dialog angezeigt
- das Startmenü kann nun über einen zweiten Klick auf den Startbutton geschlossen werden
- es werden nun spezielle Icons für die Explorer-Fenster angezeigt
- die Performace wurde verbessert

Ich hoffe damit bleibt das Startmenü jetzt bei allen offen

Wenn ihr noch Erweiterungsideen habt (Einzeilige Taskleiste und Platz reservieren hab ich noch im Hinterkopf) oder Fehler findet könnt ihr sie ja hier posten
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Mazo am .
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Ah, bestens
Jetzt wird das Startmenü korrekt angezeigt.

Erweiterungsideen?
Ja, da hätte ich noch ein paar:
  • Wie gesagt, das manuelle, gezielte Ausblenden von bestimmten Prozessen (vielleicht sogar per Regex?) wäre hilfreich
  • Der klassische Tooltip "Start" fehlt
  • Ideal wäre, wenn das tatsächliche Icon des Fensters angezeigt würde und dieses dann in der entsprechenden Auflösung (kein Verkleinertes 48x48)
  • Angleichung der Schnellstartleiste in Bezug auf Überlauf an das Original (nur ein Doppelpfeil)
  • Rahmen um die Vorschaufenster
  • "Herabsetzen" des Startmenüs


Zu dem Platzreservieren: Wenn du die Taskleiste zwischenzeitlich neustarten würdest, müsste es doch gehen?
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Hallo winSharp93,
ich werde deine Vorschläge umsetzen, sofern ich es nicht schon getan habe (die Icons werden ab der nächsten Version orginal aus dem Handle geholt ), allerdings ist mir noch unklar was du mit
Zitat
"Herabsetzen" des Startmenüs
meinst
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Mazo am .
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

Hallo
ich hab mal wieder ein bisschen weiter an der Taskleiste rumprogrammiert...
Zitat
  • Wie gesagt, das manuelle, gezielte Ausblenden von bestimmten Prozessen (vielleicht sogar per Regex?) wäre hilfreich
  • Ideal wäre, wenn das tatsächliche Icon des Fensters angezeigt würde und dieses dann in der entsprechenden Auflösung (kein Verkleinertes 48x
  • Rahmen um die Vorschaufenster
Wurde alles realisiert, die Rahmen um die Vorschaufenster sehen allerdings noch nicht schick aus^^. Hinzu kommt das die Verankerung der Taskleiste nun funktionieren sollte (wenn die Orginale nicht immer im Vordergrund ist)
Zitat
  • Der klassische Tooltip "Start" fehlt
  • Angleichung der Schnellstartleiste in Bezug auf Überlauf an das Original (nur ein Doppelpfeil)
  • "Herabsetzen" des Startmenüs
Die beiden Dinge konnten nicht realiesiert werden, da ein Tooltip über meine Kenntnisse hinaus geht und ich noch nicht weiß was mit dem "herabsetzten" gemeint ist... Das mit dem Doppelpfeil ist in Arbeit hat mir aber mein letzten Nerv geraubt und ist daher noch nicht dabei Hier der Link zur Version 0.7.0.0
private Nachricht | Beiträge des Benutzers
winSharp93
myCSharp.de - Experte

Avatar #avatar-2918.png


Dabei seit:
Beiträge: 5.742
Herkunft: Stuttgart

beantworten | zitieren | melden

Ah, perfekt - das Docken klappt einwandfrei. (Auch wenn die "originale" immer im Vordergrund ist).
Zitat von Mazo
und ich noch nicht weiß was mit dem "herabsetzten" gemeint ist...
Mit "Herabsetzen" meinte ich, dass das Startmenü zu weit oben angezeigt wurde.
Mit diesem Release wird es jetzt allerdings zu tief angezeigt.
private Nachricht | Beiträge des Benutzers
Mazo
myCSharp.de - Member



Dabei seit:
Beiträge: 255
Herkunft: Sachsen

Themenstarter:

beantworten | zitieren | melden

ich denke das liegt an dem "immer im Vordergrund" da die orginale Taskleiste die Screen.WorkingArea einschränkt und somit die Position des Startmenüs nicht mehr passt^^
schau mal ob das Startmenü richtig angezeigt wird ohne "Immer im Vordergrund"

Mazo
private Nachricht | Beiträge des Benutzers
Human
myCSharp.de - Member



Dabei seit:
Beiträge: 14

beantworten | zitieren | melden

nettes Tool, hab aber leider auch einen Fehler zu melden.
Zitat
Unbekannter Fehler!
Es trat ein unbekannter Fehler auf!
Die Elemente können nicht angezeigt werden.

klicke ich den fehler weg, kommt er sofort wieder.

Mein System:
Win XP SP2
.Net 3.5
Intel Q6600
3GB RAM
Monitor anzahl: 5
private Nachricht | Beiträge des Benutzers