Button mit Var. wie "%PROGRAMFILES%" und Para. wie %P%N korrekt einrichten

German support forum

Moderators: white, Hacker, Stefan2

Post Reply
User avatar
Lucky Joe
Member
Member
Posts: 161
Joined: 2012-07-25, 10:30 UTC

Button mit Var. wie "%PROGRAMFILES%" und Para. wie %P%N korrekt einrichten

Post by *Lucky Joe »

Hallo zusammen,

ich möchte einen Button mit einem Programm belegen, das eine Aktion mit der aktuell markierten Datei ausführt. Es handelt sich um ein Programm, das normalerweise in einem cmd-Fenster ausgeführt wird und dem als Parameter eine Datei übergeben wird (konkret geht es um das SysInternal-Programm "sigcheck.exe", was bei mir in diesem Ordner liegt: "%PROGRAMFILES%\!Tools\WSCC\SysInternals Suite\sigcheck.exe"

Normalerweise übergebe ich in dem Button den Parameter (die Datei, die untersucht werden soll) mit den Parametern "%P%N", aber das funktioniert bei mir nicht. Entweder ist das cmd-Fenster sofort wieder verschwunden, oder aber es wird nur die "Sigcheck.exe" ausgeführt, die dann ihre eigene Hilfe auswirft (offensichtlich hat sie die Parameter nicht "erkannt"), oder es findet die Sigcheck.exe nicht.

Bisher habe ich schon etliche Kombinationen von Aufrufen mit und ohne Anführungszeichen ausprobiert, alles in der Zeile "Kommando" oder in Kombination mit der Zeile "Parameter".

Am "weitesten" bin ich bisher mit

cmd /k "%PROGRAMFILES%\!Tools\WSCC\SysInternals Suite\sigcheck.exe" %P%N

Damit wird Sigcheck aufgerufen, aber offensichtlich erkennt es nicht die Parameter.
Was muss ich wo eintragen, damit das läuft?

Danke schon mal im Voraus.
HG - Lucky Joe


Subject dem Inhalt angepasst vom Mod.
Herzliche Grüße aus dem Rheinland
Lucky Joe
User avatar
Hacker
Moderator
Moderator
Posts: 13065
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Re: Button mit "cmd / Programm und Parameter"

Post by *Hacker »

Lucky Joe,
Klicke mal rechts auf den Button, Kopieren, und füge dann hier ein.

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
User avatar
Stefan2
Power Member
Power Member
Posts: 4158
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: Button mit "cmd / Programm und Parameter"

Post by *Stefan2 »

Ich hatte auch immer Probleme mit Umgebungsvariablen in der Kommando-Box.
Kommando: cmd /k "%PROGRAMFILES%\!Tools\WSCC\SysInternals Suite\sigcheck.exe"
Parameter: %P%N

Der Befehl "C:\Program" ist entweder falsch geschrieben oder konnte nicht gefunden werden.




Versuche es mal so:
Kommando: cmd /k
Parameter: ""%%PROGRAMFILES%%\!Tools\WSCC\SysInternals Suite\sigcheck.exe" %P%N"
Das ist: " " % %PROGRAMFILES% % \!Tools\WSCC\SysInternals Suite\sigcheck.exe " %P%N "



Ein paar Tipps:
- %Umgebungsvariablen% werden nur in der Kommando-Box aufgelöst.
   In der Parameter-Box muss man die % verdoppeln: %%Umgebungsvariablen%%, da jeder Interpreter jeweils die äußeren % entfernt.
   Und dann kommt es auf den jeweiligen Interpreter (das Programm) an, wie er mit den gelieferten Informationen umgeht und das versteht.
- TC-interne Variablen wie %P und %N werden nur in der Parameter-Box aufgelöst.
- Auch bei der Vergabe der Anführungszeichen muss man oftmals kreativ sein und etwas rum-experimentieren.
Hier werden ebenfalls jeweils die Äußeren "" von den Interpretern bei der Annahme entfernt.
- Aber es kommt immer auf die jeweiligen verwendeten Programme an, manche handeln anders als Andere,
führen zB eigene Expansionen (%..%) und Anpassungen ("..") durch, oder versuchen "Smart" zu sein und bereiten
gerade deshalb Schwierigkeiten, weil der Anwender dass nicht vermutet. Hier hilft oft nur experimentieren.


Eine weitere funktionierende Alternative:
Kommando: cmd /k ""%PROGRAMfiles%""\!Tools\WSCC\SysInternals Suite\sigcheck.exe"
Parameter: %P%N
Das ist: cmd /k " " %PROGRAMfiles% " " \!Tools\WSCC\SysInternals Suite\sigcheck.exe "





HTH? :D
JOUBE
Power Member
Power Member
Posts: 1476
Joined: 2004-07-08, 08:58 UTC

Re: Button mit "cmd / Programm und Parameter"

Post by *JOUBE »

Lucky Joe wrote: 2020-04-16, 22:40 UTCcmd /k "%PROGRAMFILES%\!Tools\WSCC\SysInternals Suite\sigcheck.exe" %P%N
Lass den Quatsch mit "cmd /k" weg, schreib eine Batch "MeinKommendo.cmd", die du stattdessen auf deinen Button legst mit %P%N als Übergabeparameter. Am Ende des Batches lässt dich der Befehl "pause" dann deine Befehlszeile in Ruhe aufbauen ansehen und debuggen:

Code: Select all

@echo "%PROGRAMFILES%\!Tools\WSCC\SysInternals Suite\sigcheck.exe" %1
      "%PROGRAMFILES%\!Tools\WSCC\SysInternals Suite\sigcheck.exe" %1
@pause
Tipp: Fehler im Bereich Gänsebeine in Kombination mit Leerzeichen im Pfadnamen sind häufige Ursachen für Probleme.

JOUBE
User avatar
Lucky Joe
Member
Member
Posts: 161
Joined: 2012-07-25, 10:30 UTC

Re: Button mit "cmd / Programm und Parameter"

Post by *Lucky Joe »

Hallo zusammen,

@Stefan2: Danke für deine guten Erläuterungen. Ich hatte mir gestern schon mal deine "FAQs: TC Automatisieren Skripten (Für jede Datei / Alle Dateien)" angeschaut, aber das mit den doppelten "%%" ist mir nicht ins Auge gefallen. Ich habe mich für die alternative Version von dir entschieden, da sie meinem "Empfinden" noch am nächsten kommt. Vielleicht ergänzt du deine FAQ noch mal um deine Darstellung in diesem Beitrag. ;-)

@JOUBE: Danke auch dir. Ich habe mich für Stefans Vorschlag entschieden, einfach aus dem Grund, dass ich keine zusätzliche Datei erstellen muss.

@Hacker: Danke auch dir, dass du mir helfen wolltest. :-)
Herzliche Grüße aus dem Rheinland
Lucky Joe
NotNull
Senior Member
Senior Member
Posts: 269
Joined: 2019-11-25, 20:43 UTC
Location: NL

Re: Button mit "cmd / Programm und Parameter"

Post by *NotNull »

ODER:

Code: Select all

Command = cmd.exe
Parameters  = /c call "c:\Tools\sigcheck64.exe" %P%N & pause

ODER:
Benutze statdessen SigCheckGUI.
(Der kann aber kein Manifests anzeigen).
User avatar
Lucky Joe
Member
Member
Posts: 161
Joined: 2012-07-25, 10:30 UTC

Re: Button mit "cmd / Programm und Parameter"

Post by *Lucky Joe »

Hallo NotNull,

danke dir; noch besser: jetzt schließt sich das Fenster nach Tastendruck.
Herzliche Grüße aus dem Rheinland
Lucky Joe
Post Reply