Button einblenden wenn Image/CD eingelegt

Hilfe zu verschiedenen Themen
Antworten
B-IT
Beiträge: 47
Registriert: 11. Okt 2023 11:23

Button einblenden wenn Image/CD eingelegt

Beitrag von B-IT »

Gibt es eigentlich eine Möglichkeit, dass, wenn eine CD oder ein Image (Iso etc.) eingelegt wird, ein Button eingeblendet wird und wenn CD/Image wieder ausgeworfen wurde, dieser wieder ausgeblendet wird?
Benutzeravatar
tbone
Supporter
Beiträge: 289
Registriert: 29. Okt 2021 00:45
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von tbone »

Ich weiß nicht, man kann einen Button nicht komplett ausblenden meiner Meinung, aber ausgrauen und togglen müsste gehen, über Variablen:
https://resource.dopus.com/t/simple-dis ... pt/35947/6

Weiteres Problem, wann läuft das Script, welches die Variable setzt. Das kannst Du theoretisch immer dann machen, wenn Du einen Tab öffnest / schließt, einen Pfad wechselst usw.. aber wenn Du mit DO nicht interagierst, dann läuft nichts an um den Button-Status zu ändern.

DO selbst hat auch keine Events um auf "neue Datenträger" oder ähnlich zu reagieren, aber extern würde man das auslösen können. Über den Task-Scheduler z.B. (Ereignis wenn ein Datenträger / Laufwerk verfügbar wird). Dort könnte man DO dann anstubsen und signalisieren, dass jetzt der Button-Status geändert werden soll (muss dann ein externes Script / Batch sein, welches die Kommunikation mit DO über dopusrt.exe aufnimmt).

Is it worth it? Mhh.. o)
Benutzeravatar
Kundal
Moderator
Beiträge: 122
Registriert: 24. Okt 2021 18:02
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von Kundal »

Ein Button, der nur angezeigt wird, wenn ein Medium ins Laufwerk eingelegt wird wäre z.B. der hier:

Code: Alles auswählen

Go DRIVEBUTTONS=hideempty,removable,cdrom
Das funktioniert auch für virtuelle Laufwerke, USB-Sticks usw.
Den Button komplett ausblenden geht ansonsten per Modifier. Hier würde sich wohl @hideifpath ![Laufwerk] anbieten. Der Button wird versteckt, wenn nicht (!) ein bestimmter Pfad anliegt (Regex möglich mit @hideifpathr). Da kann man dann an Funktion reinstecken was immer man will, während der obige erstmal nur einen einfachen Go-Befehl bietet, den man natürlich auch noch ausbauen kann.
Benutzeravatar
tbone
Supporter
Beiträge: 289
Registriert: 29. Okt 2021 00:45
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von tbone »

Also davon auszugehen, dass es ein "Go" Button ist oder ein vordefinierter Menu-Button, der dann erscheint.. hätte ich das auch so verstehen müssen? o)

Man kann über eine Variable wohl einen Button auch komplett verstecken..

@hideif:$glob:MyToolbarVar

Mit @hideifpath zu arbeiten, da beisst sich doch die Katze in den Schwanz oder? Ich meine der Button soll ja ein/ausblenden, wenn ein Pfad verfügbar wird, nicht unbedingt wenn ich in einem bestimmten Pfad bin, oder nicht? Oder doch?

Ganz schön kompliziert, wenn die Spezifikationen der Funktion unklar sind, ja? o)

Erinnert mich etwas an meinen Job..
"Dann programmieren wir das jetzt mal so, es wird sich schon einer melden, wenn es nicht so funktioniert wie erwartet".. o)
B-IT
Beiträge: 47
Registriert: 11. Okt 2023 11:23

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von B-IT »

Ich meinte, dass mit mounten eines Images ein Auswerfen-Button erscheint und beim Drücken dessen das Image ausgeworfen und der Button wieder versteckt wird.
Benutzeravatar
tbone
Supporter
Beiträge: 289
Registriert: 29. Okt 2021 00:45
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von tbone »

Njor.. also das könnte man dann hinbekommen mit den besprochenen Puzzle-Teilen hier.
B-IT
Beiträge: 47
Registriert: 11. Okt 2023 11:23

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von B-IT »

Schwierig, da nicht nach Laufwerksbuchstabe geschaut werden soll, sondern nach Laufwerkstyp. Denn Windows vergibt die Buchstaben auf Basis des nä. freien Buchstabens (Doppelklick auf Iso), habe ich gerade aber einen Stick o.ä. dran, passt das Ganze schon nicht mehr. Oder aber wenn ich mehrere Images mounte. Man könnte natürlich PowerIso etc. nehmen und den/die Buchstaben festlegen, aber ich bin ein Freund davon, Dinge möglichst mit Boardmitteln zu lösen, anstatt zig Helferlein zu installieren und auch noch zu warten.

Deswegen habe ich auch einen Auswerfbutton, der zwar 1-2 Sek. länger braucht, aber nach allen Images sucht (und nicht nur nach bestimmten Buchstaben) und diese auswirft:

Code: Alles auswählen

@runmode hide
@admin:powershell Get-Volume | Where-Object DriveType -eq 'CD-ROM' | ForEach-Object {Get-DiskImage -DevicePath $_.Path.trimend('\') -EA SilentlyContinue } | Dismount-DiskImage
Benutzeravatar
tbone
Supporter
Beiträge: 289
Registriert: 29. Okt 2021 00:45
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von tbone »

Mhh, ja nee.. so, wie Dein Auswerf-Script, muss das "Laufwerk verfügbar" Script auch funktionieren. Das neue Laufwerk muss auf Typ geprüft werden und nur falls es ein ISO ist, die Variable in DO setzen.

Damit der Button aber auch wegblendet, wenn Du extern / im Explorer die ISOs abmeldest, müsste dafür ansich auch noch ein Script eingerichtet werden, eines welches bei "Laufwerk abgemeldet" durchrappelt.

Die Frage ist, ob sich das für einen Button der mal da ist und mal nicht, lohnt?.. Man kann ja sowas alles einrichten, aber wenn Du dann das Window mal wechselst oder umziehst, muss man solche Fiffi-Scripte alle wieder im TaskScheduler etc. eintragen, das ist eher müßig. Man kann einzelne ScheduledTasks vorher exportieren und auch wieder importieren, aber lästig ist das wohl trotzdem. Man könnte beim Start von DO auch gucken, ob diese ScheduledTasks alle schon da sind und falls nicht, diese automatisch anlegen. Diese Automatik macht aber auch wieder Arbeit.

Nun, musst Du wissen ob sich das alles lohnt, vielleicht lohnt es wenigstens aus "Jugend Forscht" Gründen!? o)

Du kannst ein ISO wohl auch mit fixem Buchstaben über Windows Boardmittel anmelden, braucht ein bisschen mehr HickHack, aber müsste gehen soweit ich geguckt habe. Bevor man fixe Buchstaben verwendet, muss man aber natürlich immer gucken, ob der Buchstabe noch verfügbar ist, oder ob gerade schon ein ISO darauf angemeldet ist, dann will man den vielleicht wiederbenutzen, in allen anderen Fällen will man vermutlich den nächsten freien Buchstaben. Das ist dann so ähnlich wie das Verhalten im Explorer, aber nicht ganz, weil der Explorer eben keinen Buchstaben wiederverwendet, wenn Du das nächste ISO anmelden willst.

Ich hatte auf Windows7 mit MagicDisk und MagicISO einen kompletten Wrapper geschrieben, der ließ keine Wünsche offen, abmelden, anmelden über Image-Pfad oder Letter usw. pipapo, leider geht MagicISO auf Win10 nicht mehr, ich habe gek*tzt, weil ich das 3 Wochen vor dem Zwangswechsel auf Win10 programmiert hatte. Tolle Wurst, fängt man wieder von vorne an irgendwie und mit Powershell ist alles elendig langsam und wird von DO auch nicht wirklich gut unterstützt.
B-IT
Beiträge: 47
Registriert: 11. Okt 2023 11:23

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von B-IT »

Es wäre halt das i-Tüpfelchen gewesen, dass es nur schwer umsetzbar ist, hatte ich mir schon gedacht, aber fragen kostet ja nichts und es gibt ja teilweise schon komplexe Scripts und Lösungen (z.B. SelectEX) :-).

Mit den Imageboardmitteln habe ich mich zu genüge auseinandergesetzt, extra Buchstaben vergeben etc. ist alles viel zu kompliziert, aber vor Allem das Auswerfen via Kontext nervte. Insofern war/ist der "Allround-Auswerfbefehl" die beste und einfachste Lösung.
Benutzeravatar
tbone
Supporter
Beiträge: 289
Registriert: 29. Okt 2021 00:45
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von tbone »

Jop, KISS! Keep it simple and stupid! o)

Mit Buttons die ein/ausblenden, ist auch nervös im GUI unter Umständen, ausgrauen wäre eine Lösung, aber alles in allem.
Wenn der Button so geht, kann man mit Leben vermutlich! o)
Benutzeravatar
Kundal
Moderator
Beiträge: 122
Registriert: 24. Okt 2021 18:02
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von Kundal »

Ich meinte, dass mit mounten eines Images ein Auswerfen-Button erscheint und beim Drücken dessen das Image ausgeworfen und der Button wieder versteckt wird.
Fast genau das macht der Go-Drivebuttons-Schalter doch. Wenn du was einlegst, egal ob Iso, Stick oder sonst ein Wechselmedium wird das entsprechende Laufwerk angezeigt. Bei mehreren belegten Wechsel-Laufwerken werden auch mehrere Laufwerk-Buttons angezeigt. Linksklick öffnet den Pfad in der Dateianzeige, Rechtsklick zeigt das Kontextmenü des Laufwerks mit dem Eintrag "Auswerfen". Also kein einfacher Klick sondern per Kontextmenü und nach dem Auswerfen ist der Button weg.
Benutzeravatar
tbone
Supporter
Beiträge: 289
Registriert: 29. Okt 2021 00:45
Betriebssystem: Windows 10 Pro

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von tbone »

Da muss man dann aber wissen, welcher Buchstabe nun das ISO ist.

Zudem muss man das Menu vorher öffnen, unter Umständen scrollen, Rechtsklick und dann das "Auswerfen" im Kontextmenu suchen.. kann man so machen, wer das aber 10 Mal am Tag macht, der will vielleicht doch einfach nur einen Button "Eject all ISOs".. kann ich schon nachvollziehen. Wie oft "B-IT" das braucht, weiß ich aber natürlich nicht! o)
B-IT
Beiträge: 47
Registriert: 11. Okt 2023 11:23

Re: Button einblenden wenn Image/CD eingelegt

Beitrag von B-IT »

Mal ist ein ISO offen, mal 2, mal 3 Tage keines... Da ich keinen Foldertree nutze und die Laufwerke mit "multifunc", ist nichts mit mal eben Rechtsklick.

Ich habe die CD-Laufwerke an einer Stelle und daneben den Ejectbutton - einmal drauf klicken, alles ausgeworfen. Da die CD-Laufwerke bei "empty" ausgeblendet werden, wäre es halt nice gewesen, der Ejectbutton wäre gleich mit verschwunden und würde entsprechend wieder eingeblendet, sobald ein Image online ist.

Wie gesagt, i-Tüpfelchen, mehr nicht :-)!
Antworten