Ich bin Entwickler und habe gerade eine Anwendung und meinen eigenen Dateityp mit einer eindeutigen Erweiterung (sagen wir, es wäre .aaa) erstellt. Ich möchte einen Eintrag im Menü „Senden an“ hinzufügen (Rechtsklick auf die Datei -> Senden an), damit ich „.aaa“-Dateien an meine Anwendung senden kann. Wenn ich auf eine .aaa-Datei doppelklicke, sollte sie mit meiner App geöffnet werden.
Beim Versuch, dieses Problem zu lösen, habe ich herausgefunden, dass ich eine Verknüpfung zu meiner App unter erstellen könnte C:\Users\<yourusername>\AppData\Roaming\Microsoft\Windows\SendTo
, die jedoch nur für einen Benutzer funktionieren würde. Ich frage mich, ob es einen Registrierungsschlüssel gibt, den ich dafür hinzufügen/bearbeiten könnte (sowohl für „Senden an“ als auch für die Dateizuordnung), für alle Benutzer …
Können Sie mir dabei helfen?
Antwort1
C:\Users\Default
wird nur angewendet, wenn ein neuer Benutzer erstellt wird.
Um es in das SendTo-Konto aller vorhandenen Benutzer zu kopieren, müssen Sie ein einfaches Batch-Skript schreiben:
copy "<yourfile with path>" %APPDATA%\Microsoft\Windows\SendTo /y
und kopieren Sie das Batch-Skript nach:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
Die Dateizuordnung kann auch per Batch-Skript gesteuert werden, zum Beispiel:
ftype txtfile="C:\Program Files (x86)\Notepad++\notepad++.exe" %1
Um keine weiteren Probleme zu verursachen, müssen Sie diefTypVon Ihrem Programm verwendete Variable (falls vorhanden), in unserem Fall .txt
ist die Variable txtfile
.
Sie finden sie in regedit. HKEY_CLASSES_ROOT
Suchen Sie nach der Dateierweiterung (in unserem Fall .txt
). Die benötigte Variable ist der Datenwert der (default)
Zeichenfolge.
Falls kein Wert vorhanden ist, verwenden Sie das Skript stattdessen folgendermaßen:
ftype txtfile="C:\Program Files (x86)\Notepad++\notepad++.exe" %1
assoc .txt=txtfile
Ersetzen Sie es txtfile
durch einen beliebigen Wert.
Das einzige Problem dabei ist, dass dieses Batch-Skript als Administrator ausgeführt werden muss. Dadurch wird jedoch die Standarddateizuordnung für jeden Benutzer geändert.