Forum: PC Hard- und Software Windows 7: bestimmten Dateityp "öffnen" durch eigenes Skript


von J. W. (nuernberger)


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?

: Bearbeitet durch User
von Amateur (Gast)


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.

von Gibbetnicht (Gast)


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

von J. W. (nuernberger)


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.

: Bearbeitet durch User
von Nutzer (Gast)


Lesenswert?

Früher ging das über die Einträge in der Registry, sollte heute wohl 
auch noch klappen.

http://www.activevb.de/tutorials/tut_ownext/ownext.html

von cppler (Gast)


Lesenswert?

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.

von J. W. (nuernberger)


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

von Amateur (Gast)


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.

von Guido C. (guidoanalog)


Angehängte Dateien:

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

von cppler (Gast)


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 ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.