INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Zuordnung Dateinamenerweiterung zu einem Programm



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

06.05.2008, 17:28
Beitrag #1

Juscho Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: Mar 2008

8.5
2008
de

6493
Deutschland
Zuordnung Dateinamenerweiterung zu einem Programm
Hallo, wie kann man eine eigene Dateinamenerweiterung seinem Programm zuordnen?
Im Prinzip geht es um folgendes:

In einem LV-Programm lasse ich eine ZIP-Datei mit Messdaten erstellen.
Nun wärs natürlich schön wenn man diesem ZIP-Archiv eine eigene
Dateiendung verpasst, so dass beim Klick auf ein solches Archiv
mein LV-Programm gestartet wird, der die Dateien automatisch
lädt.

Zusammengefasst folgende Fragen:
1. Wie kann ich mit dem Applikationbuilder oder LV an sich, eine bestimmte Dateiendung registrieren, so dass mein LV Programm zum Öffnen dieser Dateien benutzt wird.
2. Angenommen die Registrierung unter (1) hat funktioniert, wie erhält das LV-Programm die Information, auf welche Datei jemand geklickt hat, so
dass ich intern in dem Programm damit arbeiten kann? Also womit fange ich den Übergabeparameter ab.

Gruß Jürgen

Labview 8.5 Professional
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
06.05.2008, 18:31
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Zuordnung Dateinamenerweiterung zu einem Programm
Hallo,

zuerst mal glaube ich nicht, dass so was geht, allerdings wundere ich mich auch, wieso Du das mit einer zip-Datei machen möchtest (musst?). Es gibt doch so viele Möglichkeiten wie Du Messwerte/Daten speichern kannst.
Wieso verwendest Du denn eine zip-Datei?
Und was für Daten sind das eigentlich? Lad' doch mal Dein VI hoch.

Gruß Markus

PS: Ich finde es klasse, dass Deine Zusammenfassung länger ist, als Deine Frage an sich. Big Grin

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.05.2008, 18:50
Beitrag #3

Juscho Offline
LVF-Grünschnabel
*


Beiträge: 23
Registriert seit: Mar 2008

8.5
2008
de

6493
Deutschland
Zuordnung Dateinamenerweiterung zu einem Programm
' schrieb:Hallo,

zuerst mal glaube ich nicht, dass so was geht, allerdings wundere ich mich auch, wieso Du das mit einer zip-Datei machen möchtest (musst?). Es gibt doch so viele Möglichkeiten wie Du Messwerte/Daten speichern kannst.
Wieso verwendest Du denn eine zip-Datei?
Und was für Daten sind das eigentlich? Lad' doch mal Dein VI hoch.

Gruß Markus

PS: Ich finde es klasse, dass Deine Zusammenfassung länger ist, als Deine Frage an sich. Big Grin

Stimmt ist mir garnich aufgefallen =)
Es müssen ZIP-Dateien sein, da darin enthalten sowohl Dateien mit Persönliche Daten (XML) und Messdaten (Rohdaten) befinden.
Jede Person hat eine eigene XML-Datei und jede Messung eine eigene Rohdatendatei.

Hab etwas gegoogelt und bin auf die Windows Registry gestoßen, dort kann man
eigenen File-Extensions eigene Programme zuordnen. Aber kein Beispiel hat bei mir
bisher funktioniert. Ich hab bisweilen immer HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.mpaket
editiert, wobei .mpaket meine eigene Datei-Extension ist. Falls jemand mal ein Beispiel hat
an dem man erkennen kann welche Schlüssel man setzen muss um
einer eigenen Dateinamenerweiterung ein Standardaufrufprogramm zu übergeben
und dabei 1 Parameter übergeben kann, bitte melden.

Labview 8.5 Professional
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.05.2008, 21:17
Beitrag #4

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Zuordnung Dateinamenerweiterung zu einem Programm
' schrieb:Stimmt ist mir garnich aufgefallen =)
Es müssen ZIP-Dateien sein, da darin enthalten sowohl Dateien mit Persönliche Daten (XML) und Messdaten (Rohdaten) befinden.
Jede Person hat eine eigene XML-Datei und jede Messung eine eigene Rohdatendatei.

Hab etwas gegoogelt und bin auf die Windows Registry gestoßen, dort kann man
eigenen File-Extensions eigene Programme zuordnen. Aber kein Beispiel hat bei mir
bisher funktioniert. Ich hab bisweilen immer HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.mpaket
editiert, wobei .mpaket meine eigene Datei-Extension ist. Falls jemand mal ein Beispiel hat
an dem man erkennen kann welche Schlüssel man setzen muss um
einer eigenen Dateinamenerweiterung ein Standardaufrufprogramm zu übergeben
und dabei 1 Parameter übergeben kann, bitte melden.

Das Ganze ist zwar in der Registry aber etwas komplizierter als Du denkst.

Also zuerst hast Du eine Extension Registrierung. Das geschiet in HKCR.<your extension>, Der Default Wert dieses Keys ist ein Name eines anderen Keys ebenfalls unter HKCR, dein Filetyp. In diesem Filetyp key kreierst Du einen weiteren Key mit dem Namen "Default Icon" Sein Wert ist der Pfad zu einer Icon Resource die Du von Explorer benützt sehen willst wenn er Dein File darstellt. In Deinem Filetyp kreierst Du noch einen "shell" Key, In diesem kreierst Du einen "open" Key, Darin noch einen "command" Key und der Wert dieses letzten ist die Commandline die Du gerne von Explorer ausgeführt haben möchtest wenn jemand Deinen File Typ doppelklickt. Der Wert sollte ungefähr so aussehen: "C:Program FilesYour ProgramYourApp.exe" "%1"

Dann musst Du in Deinem LabVIEW programm die Command Line abfragen (ein Applikationsproperty) und beim Builden Deiner Applikation noch die Checkbox anwählen, dass Command Line Parameters durchgegeben werden sollen.

Das einzige Problem ist dass dadurch die Applikation jedesmal aufgestartet wird auch wenn sie schon aktiv ist. Um das zu vermeiden müsste man auch noch DDE Support hinzufügen nur bietet die LabVIEW DDE Library keinen Support um Commands zu empfangen, nur Data Peek und Pokes. Und die Windows Shell sendet das DDE Kommando als Command.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2008, 07:14
Beitrag #5

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Zuordnung Dateinamenerweiterung zu einem Programm
Krass.:oWoher weiß man denn so was? Guru2

Gruß Markus

' schrieb:Das Ganze ist zwar in der Registry aber etwas komplizierter als Du denkst.

Also zuerst hast Du eine Extension Registrierung. Das geschiet in HKCR.<your extension>, Der Default Wert dieses Keys ist ein Name eines anderen Keys ebenfalls unter HKCR, dein Filetyp. In diesem Filetyp key kreierst Du einen weiteren Key mit dem Namen "Default Icon" Sein Wert ist der Pfad zu einer Icon Resource die Du von Explorer benützt sehen willst wenn er Dein File darstellt. In Deinem Filetyp kreierst Du noch einen "shell" Key, In diesem kreierst Du einen "open" Key, Darin noch einen "command" Key und der Wert dieses letzten ist die Commandline die Du gerne von Explorer ausgeführt haben möchtest wenn jemand Deinen File Typ doppelklickt. Der Wert sollte ungefähr so aussehen: "C:Program FilesYour ProgramYourApp.exe" "%1"

Dann musst Du in Deinem LabVIEW programm die Command Line abfragen (ein Applikationsproperty) und beim Builden Deiner Applikation noch die Checkbox anwählen, dass Command Line Parameters durchgegeben werden sollen.

Das einzige Problem ist dass dadurch die Applikation jedesmal aufgestartet wird auch wenn sie schon aktiv ist. Um das zu vermeiden müsste man auch noch DDE Support hinzufügen nur bietet die LabVIEW DDE Library keinen Support um Commands zu empfangen, nur Data Peek und Pokes. Und die Windows Shell sendet das DDE Kommando als Command.

Rolf Kalbermatter

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2008, 16:05
Beitrag #6

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Zuordnung Dateinamenerweiterung zu einem Programm
' schrieb:Krass.:oWoher weiß man denn so was? Guru2

Gruß Markus

Ist oder war zumindest mal auf MSDN dokumentiert. Das Ganze stammt auch noch aus der guten alten Zeit des File Managers unter Windows 3.1 obwohl diese Filezuordnung damals noch im sytem.ini stand da die Registry noch nicht erfunden war.
Und ich habe mich mal ganz seriös damit rumgeschlagen als ich eine Windows Shell Extension programmierte um LabVIEW LLB Files als extra Directory Level in Explorer sichtbar zu machen. Hat die Leute von NI damals so erschreckt dass Sie in einer der nächsten Versionen von LabVIEW auch so eine Shell Extension hatten Cool

Ist aber inzwischen wieder aus LabVIEW raus und wird anstelle davon in den VI Library Manager umgelenkt der unter LabVIEW selbst läuft.

Aber wenn Du grundsätzlich mal weisst wo es ist lässt sich der ganze Rest recht einfach aus der Untersuchung von bestehenden Einträgen in der Registry deduzieren.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  LabVIEW Programm als eigenes Programm starten labtoni 5 8.190 19.12.2011 15:21
Letzter Beitrag: labtoni

Gehe zu: