gelöst Neue Dateiendung in Registry erstellen (automatisiert)

Mitglied: testLX

testLX (Level 1)

03.10.2015 um 20:15 Uhr, 1345 Aufrufe, 8 Kommentare

Hallo
Ich habe ein Programm geschrieben, dass ".pm" Datei erstellt. Ich möchte, dass wenn man auf die Datei klickt, mein Programm geöffnet wird.
Es ist machbar, wenn man seine Programme durchsucht und dann auf die .exe den Weg findet, ich möchte aber dass wenn das Programm (mittels InstallForge) installiert wird, direkt die Registry einträge macht, das man selbst nichts mehr machen muss.

Bin dankbar um jede Antwort


PS.: Das Programm ist mit C# geschrieben und kann gerne von euch getestet werden.
Mitglied: Mild0x00001C
03.10.2015 um 21:34 Uhr
Mitglied: testLX
03.10.2015 um 22:33 Uhr
Hab die Lösung, wenn jemand Hilfe brauch, fragt mich
Mitglied: tomolpi
03.10.2015 um 22:39 Uhr
Poste es doch einfach hier, wenn jemand das gleiche wissen will, kann er die SuFu oder eine Suchmaschine seines Vertrauens benutzen und findet was
Mitglied: Nemo-G
04.10.2015 um 12:27 Uhr
Passt zwar nicht ganz, wenn der TO die Assoziation in sein Installationsprogramm integrieren will;
Aaaaber In meinem Fundus befindet sich schon seit Ewigkeiten
ASSOCIATE.EXE
(... assigns an extension directly with an executable application. This is done by automatically adding a new FileType to the system registry.)
aus dem NT4-/W2000-Resourcekit (vgl. Beschreibung mit Syntax bei ss64.com)
Es tut seinen Dienst nach wie vor auch auf Win8.x.

Gruß, Nemo-G
Mitglied: testLX
04.10.2015 um 15:10 Uhr
ok, ich schreibe nun, wie man das in die Registry einträgt und danach in InstallForge einträgt.
WICHTIG: Achte auf Groß und Kleinschreibung
Ich nenne in der Registry die "Schlüssel" : "Ordner"
ABKÜRZUNG: o.Anf: = ohne Anführungsstriche

1. Öffne: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\
dann erstellt man einen Ordner mit seiner Wunschendung z.B(o.Anf: ".pm"

2. Erstelle in ".pm" 2 Ordner (Exakt der Name!)(o.Anf): 1. "OpenWithProgids" 2. "UserChoice"

3. In OpenWithProgids: einmal ist die (Standard) Variable drin und hinzu kommt die Zeichenfolge namens(o.Anf): "pm_Test" und der Wert bleibt leer !

4. In UserChoice: kommt auch eine Zeichenfolgenames(o.Anf): "Progid" und der Wert muss den selben haben wie die Zeichenfolge von Nr.3. also(o.Anf): "pm_Test"

5. Jetzt gehen wir in: HKEY_CLASSES_ROOT und fügen in den Gesamtordner den identischen Namen ein(o.Anf): "pm_Test"
darin ein Ordnernamens: "shell", darin: "open", darin: "command"

im Ordner "command" schreiben wir in die (Standard)-Variable, den Pfad der .exe Datei die wir als Standardprogramm haben wollen.
z.B ( jetzt mit Anführungsstrich!!!): ""C:\Program Files (x86)\Test\Passwort Manager\Passwort Manager.exe" "%1"

Ausser den Pfad soll nichts verändert werden!!

In InstallForge einfach den jeweiligen Pfad eingeben (also HKEY_CURRENT_USER............FIleExt......)

Um in InstallForge in die (Standard) Variable reinzuschreiben, schreiben wir erst den Pfad, dann als Zeichenfolge z.B.: "ÄNDERN" und den Wert, wie oben beschrieben.
Dann öffnet man die .ifp Datei von InstallForge und löscht einfach: "ÄNDERN". Die Zeile muss aber bestehen und einfach leer sein!
Dann InstallForge neuöffnen mit der Datei und fertig!

Ich hoffe ich konnte helfen, bei Fragen, einfach melden
Mitglied: AnkhMorpork
05.10.2015 um 10:22 Uhr
Also unter "automatisiert" verstehe ich was anderes. Das Anlegen der Schlüssel via PS zum Beispiel.

So ist das doch Handarbeit ...
Mitglied: testLX
05.10.2015 um 12:17 Uhr
Einmal in InstallForge eingegeben, immer vorhanden
Mitglied: holli.zimmi
06.10.2015 um 16:45 Uhr
Hi,

der Befehl in Windows 7 bzw. 8 usw heist "assoc" und macht das gleiche!
Einfach die Eingabaufforderung starten und "help" eingeben!

Gruß

Holli
Titel: Neue Dateiendung in Registry erstellen (automatisiert)
Content-ID: 284549
Art des Inhalts: Frage
Ausgedruckt am: 24.06.2019 um 19:22:42 Uhr
URL: https://administrator.de/contentid/284549