• In diesem Thread hatte ich die Problematik, Listview Einträge mit Icon untereinander anzuordnen.
    Benötigt habe ich das hierfür - mein eigenes Favoritenmenü. Natürlich kann man das alles auch im Windows Startmenü anpinnen. Ich wollte jedoch ein Menü ausschließlich für meine Favoriten.

    Das Menü wird eingeblendet mit <Strg+Shift+M> und kann mit <Esc> ausgeblendet werden. Je nach Position der Taskbar wird auch das Menü positioniert, in Windows 11 ist das ja offiziell nur noch unten erlaubt. <X
    Links-Klick auf einen Eintrag führt die hinterlegte Anwendung aus, Rechts-Klick zeigt einen Tooltipp mit dem Anwendungspfad.
    Falls gewollt, kann man die Menüanwendung mit <Strg+Alt+M> beenden.

    Beim ersten Start wird eine INI Datei im Ordner der EXE erstellt, mit dem Namen der EXE. Beim ersten Aufruf des Menüs ist nur ein Eintrag zum Start der Verwaltungsoberfläche enthalten.
      

    Die Nutzung der Verwaltungsoberfläche ist eigentlich selbsterklärend:
      
    Als Alias wird automatisch der Programmname verwendet, ist aber frei editierbar. Die System-Events: Abmelden / Neustart / Herunterfahren können per Checkbox in das Menü übernommen werden.
    Mit jedem Menüeintrag wird das Menü dynamisch angepasst. Die Icon der Anwendungen werden in das Menü übernommen.
    Werden mehrere Anwendungen nacheinander durch Zwischenspeichern erfasst, wird beim Aufruf des Auswahlmenüs automatisch der zuletzt verwendete Pfad verwendet. Vermeidet lästiges Durchklicken. ;)

    Die Änderungen sind sofort im Menü gültig:

    Die Apps lassen sich einfach durch Demarkieren der Checkbox wieder vom Menü entfernen.

  • Funktioniert das nur für Programme oder ev. auch für Ordnerpfade? Bzw könnte man die Pfade ev. in der *.ini hinterlegen?


    LG


    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Frei nach Albert Einstein)

  • Funktioniert das nur für Programme oder ev. auch für Ordnerpfade? Bzw könnte man die Pfade ev. in der *.ini hinterlegen?

    In der Auswahl ist ein Filter für EXE Dateien, müsstest du also per Hand in die INI schreiben.
    z.B.

    Code
    [apps]
    ...
    MeinLieblingsordner=D:\Peters_Katzenfotos\2025

    :D

    Bei Klick auf den Menüpunkt wird der Ordner im Dateiexplorer geöffnet. Wenn du die Einträge in der INI vornimmst, während das Menüprogramm läuft, musst du danach zumindest das Verwaltungsmenü Öffnen und Schließen, damit die Änderungen eingelesen werden. Icon hast du allerdings keines.

    EDIT:

    Wenn du die folgende geänderte Funktion ins Skript einfügst (ca. Zeile 270) wird bei nicht gefundenem Icon automatisch das Ordnersymbol verwendet.

  • Danke

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Frei nach Albert Einstein)

  • Sieht gut aus, aber vielleicht ein paar Anregungen:

    INI-Files die der Benutzer erstellt sollten immer unter dem Userprofilepfad befinden. Das hat zwei "Vorteile": Einerseits kann das Programm unter c:\programfiles\... stehen wo ein Benuzter ohne Adminrechte eigenlich nicht schreiben darf. Sollte es mehrer Benutzer auf einen Client geben, dann hat jeder User sein eigenes INI-File...

    lg
    Racer

  • INI-Files die der Benutzer erstellt sollten immer unter dem Userprofilepfad befinden.

    In einer Mehrbenutzerumgebung stimme ich dir zu. Aber ich schätze mal, dass mehr als 70% der privat genutzten PC nur von einem User genutzt werden. Ich persönlich kenne niemanden, bei dem auf dem Privat-PC mehrere User angelegt sind.

    Aber natürlich kann jeder, der das Programm nutzen möchte, diese minimale Änderung einpflegen (Ändern einer Variablenzuweisung). :whistling:


    Nachtrag:

    Wenn ich Software für andere erstelle, schreibe ich erst recht nicht in die AppData. Für den "Normaluser" ist dieser Bereich nicht sichtbar, es sei denn er gibt die Ordneradresse per Hand ein. Somit läuft man Gefahr, dass sich dort viel Datenmüll ansammelt.
    Mehrbenutzerverwaltung lässt sich auch in einer INI ohne Probleme realisieren. Bekommt einfach jeder User seine Sektion. :P

  • Oder man trennt halt:

    Ini im Programm-Ordner: allgemeine Settings die für alle gelten. (Prio 2)

    Ini im user Ordner: Benutzerspezifische Settings (Prio 1 = überschreiben Programm lokale settings)

    Das kann je nach Programm und dessen Aufbau Sinn machen.