Windows 7: bestimmten Dateityp "öffnen" durch eigenes Skript

OP #3355342
Lesenswert?

Hallo,
ich möchte vom Datei-Explorer aus manche Dateien durch ein eigenes 
Skript ausführen lassen ("öffnen").
Z.b. dateien mit endung *.msc (My script) sollen durch ein Lua Skript 
ausgeführt werden.
Das (Lua-)Skript erwartet den vollständigen Pfad der zu öffnenden Datei 
als erstes Argument.
Das ganze ist nicht Lua-spezifisch, das Skript kann auch eine andere 
Sprache sein (z.B. Windows-Batch)

D.h. durch ein Klick auf eine *.msc Datei soll

\users\public\lua52\lua.exe  \users\public\myscript_interpreter.lua 
\pfad\myscript.msc

ausgeführt werden.
Da sind insgesamt 3 Dateien im Spiel: Der Lua-Interpreter (lua.exe), das 
lua-script (*.lua) und die Ziel-datei.
Wie kann ich das einstellen?
Gast #3355383
Lesenswert?

'ne eigene Reaktion konnte man früher über die Ordneroptionen erreichen. 
Da war eine Liste der verfügbaren Erweiterungen, in der man die Reaktion 
auf einen Doppelklick steuern konnte. Notfalls konnte man auch eigene 
Erweiterungen definieren. Allerdings: Anno XP.
Gast #3355405
Lesenswert?

Rechte Maustaste auf die zu oeffnende Datei -> "oeffnen mit" -> 
durchsuchen (hier dann das Programm mit welchem geöffnet werden soll 
angeben) und den Haken bei "Dateityp immer mit diesem Programm öffnen" 
(oder so aehnlich) drin lassen.

Das sollte funktionieren
OP #3355418
Lesenswert?

> Das sollte funktionieren

Ich hatte schon geschrieben, dass 3 Dateien involviert sind.
Vermutlich hast du das Problemchen noch nicht ganz verstanden.
Ich werde versuchen, das zu erklären ...

> (hier dann das Programm mit welchem geöffnet werden soll

2 Programme werden hier benötigt: Der Skript interpreter (z.B. lua.exe, 
oder perl.exe, oder ...) und das (Lua/Perl/...) Skript, welches die 
Ziel-Datei dann bearbeiten soll.
OP #3355461
Lesenswert?

cppler schrieb:
> Wo liegt nun das Problem ?
> Du schreibst Dir eine Batch in der Dein LUA samt Interpreter passend
> ausgeführt wird und gibst diese Batch als auszuführendes Programm an.

Ja, so habe ich das immer gemacht
eine datei "mybatch.cmd"
wo drin steht
1
c:\users\public\lua52\lua.exe  c:\scripts\myscript.lua  %1
Diese Datei (mybatch.cmd) gebe ich dann als das Programm an, womit der 
Explorere den bestimmten Dateityp öffnen soll

Aber diese Lösung erscheint mir zu umständlich.
Es gibt doch sooo viele Skriptsprachen. Anscheinend ist 
Skript-Programming z.Zt. "in".
Da will man doch irgendwann einmal eine Datei mit seinem eigenen Skript
Gast #3355478
Lesenswert?

Es gibt nur einen Doppelklick. Natürlich pro Erweiterung. Sonst hilft 
nur noch: Öffnen mit...
Windows kann nicht, wenn die Sonne tief steht was anderes machen als am 
Morgen. Ent- oder weder.
Du kannst aber Deinen Klick auf eine eigene Datei umleiten und dort 
solche Feinheiten regeln. Zum Primitiveln ein Batch-Job. Für Verwöhnte 
'ne eigene .Exe. Die Umgebungsvariablen sowie argv und argc können auch 
recht hilfreich sein - wenn Du sprechen Ceh.
#3355841
Lesenswert?

Hallo,

unter Windows XP habe ich mir einmal etwas vergleichbares eingerichtet. 
Wenn ich bei mir eine OrCAD Capture Projektdatei über einen Doppelklick 
öffne werden zunächst der alten "Autosave"-Dateien von OrCAD gelöscht 
und dann erst die Anwendung OrCAD Capture gestartet.

Unter Windows XP geht dies im Dateiexplorer über die Menüleiste durch 
Aufruf von "Extras" => "Ordneroptionen...". Anschließend im Dialogfeld 
"Ordneroptionen" in dem Karteireiter "Dateityp" den entsprechenden 
Dateityp auswählen. Über die Schaltfläche "Erweitert" lassen sich die 
gewünschten Einstellungen vornehmen. In meinem Fall habe ich einen neuen 
Eintrag mit
1
C:\WINDOWS\system32\cmd.exe /c (rd "%%TMP%%\autosave" /s /q & cd /d "C:\Program Files\Orcad\Capture" & start /b .\capture.exe "%1" /i ".\")
 erstellt. Abschließend habe ich diesen Eintrag als Standard gesetzt.

Das Ganze sollte unter Windows 7 nicht viel anders aussehen.

Mit freundlichen Grüßen
Guido
Angehängte Dateien:
Gast #3355895
Lesenswert?

J. Wa. schrieb:
> cppler schrieb:
>> Wo liegt nun das Problem ?
>> Du schreibst Dir eine Batch in der Dein LUA samt Interpreter passend
>> ausgeführt wird und gibst diese Batch als auszuführendes Programm an.
>
> Ja, so habe ich das immer gemacht
> eine datei "mybatch.cmd"
> wo drin steht
>
1
> c:\users\public\lua52\lua.exe  c:\scripts\myscript.lua  %1
2
>
> Diese Datei (mybatch.cmd) gebe ich dann als das Programm an, womit der
> Explorere den bestimmten Dateityp öffnen soll
>
> Aber diese Lösung erscheint mir zu umständlich.
> Es gibt doch sooo viele Skriptsprachen. Anscheinend ist
> Skript-Programming z.Zt. "in".
> Da will man doch irgendwann einmal eine Datei mit seinem eigenen Skript

Tja nun dann bleibt Dir nur das Du einen "Scriptparser" als Batch oder 
wie schon angedeutet als Binary selber baust.
Du könntest z.B. als erste Zeile in Dein Skript das verwendete Programm 
mit Parametern eintragen ...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren