locked
registry & file association & shellnew keys RRS feed

  • Frage

  • Hi, ich hätte da einige Fragen bezüglich registry & file association & shellnew keys. Mein System: Windows 7 x64.

    Ich will unter "rechte Maustaste" --> Neu eine Powershell.PS1 eintragen. Dazu lege ich in der Registry unter HKEY_CLASSES_ROOT\.ps1 einen neuen Schlüssel "ShellNew" an und den Wert "FileName". Diesen weise ich dann den Namen der unter "c:\windows\shellnew" hinterlegten PS1-Datei zu.

    Leider funktioniert das bei allen anderen Dateitypen, nur nicht mit .PS1, auch nicht wenn ich diesen ShellNew-Key unter "Microsoft.PowerShellScript.1" anlege.

    Ein ähnliches Problem habe ich auch, wenn ich mir die rechte Maustaste für NFO-Dateien anpassen will. Standartmäßig werden NFO-Dateien mit Notepad geöffnet. Egal was ich dort eintage, es wird nicht angezeigt.

    Z.B. steht unter HKEY_CLASSES_ROOT\.URL "InternetShortcut". Wenn ich dann unter "HKEY_CLASSES_ROOT\InternetShortcut" etwas eintrage, wird es nicht angezeigt. Erst wenn ich es unter "HKEY_CURRENT_USER\Software\Classes\IE.AssocFile.URL" eintage, wird es angezeigt. Ich nehme mal an, das sich dort auch ein Verknüpfung zu NFO-Dateien versteckt.

    Wie kriege ich diese Verknüpfungen zwischen Dateitypen und Registry-Einträgen heraus? Also z.B. das *.url nicht gleich "*.url = InternetShortcut" ist sondern "*.url = IE.AssocFile.URL".

     

    Sonntag, 15. Januar 2012 17:26

Antworten

  • > Ja genau das meine ich. Wenn ich unter HKCR einen Key Namens z.B.
    > ".0815" anlege und ihm den Wert "MSInfoFile" gebe, dann ist es ein
    > "MSInfoFile". Dann sollten alle Eintrage unter "MSInfoFile" wirksam
     
    Wenn ich das per Regkey mache, tut es erst nach Neustart. Mache ich es
    per assoc, geht es sofort.
     
    > Wenn ich mir den Schlüssel ".URL" anschaue, hat dieser den Wert
    > "InternetShortcut". Um dort z.B. "mit Notepad öffnen" auf der rechten
    > Maustaste zu erhalten, muß ich aber einen Eintrag unter dem Schlüssel
    > "IE.AssocFile.URL" vornehmen und nicht unter dem Schlüssel
    > "InternetShortcut".
     
    Weil .URL nicht nur einen Dateityp zugeordnet hat, sondern auch einen
    ShellEx {FBF23B40-E3F0-101B-8488-00AA003E56F8}, was wiederum die CLSID
    von IE.AssocFile.URL ist.
     
    mfg Martin
     

    A bissle "Experience", a bissle GMV... Wenn meine Antwort hilfreich war, freue ich mich über eine Bewertung! If my answer was helpful, I'm glad about a rating!
    Donnerstag, 19. Januar 2012 15:27

Alle Antworten

  • > Ein ähnliches Problem habe ich auch, wenn ich mir die rechte Maustaste
    > für NFO-Dateien anpassen will. Standartmäßig werden NFO-Dateien mit
    > Notepad geöffnet. Egal was ich dort eintage, es wird nicht angezeigt.
     
    Hm - standardmäßig werden die mit msinfo32.exe geöffnet. Wenn da bei Dir
    Notepad startet, hast Du selbst das mal geändert -  und bei den
    Extensions hat die User-Auswahl Vorrang vor der Computerdefinition.
     
    Check mal
    HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO (:
     
    Für Dein ShellNew mit .PS1 hab ich so aus dem Stegreif allerdings keine
    Erklärung.
     
    mfg Martin
     

    A bissle "Experience", a bissle GMV... Wenn meine Antwort hilfreich war, freue ich mich über eine Bewertung! If my answer was helpful, I'm glad about a rating!
    Montag, 16. Januar 2012 15:18
  • Ja stimmt, ich habe für NFO-Files "Öffnen mit ... Notepad als Standartprogramm" geklickt.

    Unter dem Reg-Key steht folgendes:

    ----------------code-beginn-------------
    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO]

    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\OpenWithList]
    "a"="jane.exe"
    "MRUList"="ba"
    "b"="NOTEPAD.EXE"

    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\OpenWithProgids]
    "MSInfoFile"=hex(0):

    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\UserChoice]
    "Progid"="Applications\\notepad.exe"
    ----------------code-end-------------

    Selbst wenn ich an der von dir genannten Stelle folgendes anlege:

    ----------------code-beginn-------------
    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\shell]

    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\shell\jane]
    @="[ j@ne ]"
    "Icon"="C:\\TOOLs\\nfo-edit-jane\\jane.exe"

    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\shell\jane\command]
    @="C:\\TOOLs\\nfo-edit-jane\\jane.exe \"%L\""
    ----------------code-end-------------

    taucht dieser Eintrag in der rechten Maustaste nicht auf.

    Eigentlich kenne ich das so, daß ich unter "HKEY_CLASSES_ROOT" nach der Dateiendung suche, dann eventuell noch nach dessen Verweis und dort meine Änderung oder Ergänzung vornehme.

    Was ich dabei nicht verstehe, ist das Beispiel "URL --> InternetShortcut" . Wie kriege ich heraus, das "*.url" nicht mit "InternetShortcut" verknüpft ist, sondern mit "IE.AssocFile.URL" ? Ähnliches vermute ich mit den NFO-Dateien.

    Oder verhindert der Schlüssel "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\UserChoice" irgend eine Anpassung?

    mfg Tytn2010

     

     

     

    Donnerstag, 19. Januar 2012 10:34
  • > Oder verhindert der Schlüssel
    > "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.NFO\*UserChoice"
    > *irgend eine Anpassung?
     
    Hab mich noch nicht so ausführlich mit diesen Keys beschäftigt, denn: Ab
    Vista hab ihc mit den Group Policy Preferences "Ordneroptionen" die
    gleiche Möglichkeit, nur mit nem GUI dazu, das dafür sorgt, daß die
    richtigen Keys gesetzt werden. Im Benutzerkontext ist das sehr einfach -
    Endung eingeben, Anwendung auswählen, fertig (:
     
    Und das Kontextmenü, das wird ohnehin nicht von den FileExts definiert,
    sondern von HKCR\MSInfoFile.
     
    mfg Martin
     

    A bissle "Experience", a bissle GMV... Wenn meine Antwort hilfreich war, freue ich mich über eine Bewertung! If my answer was helpful, I'm glad about a rating!
    Donnerstag, 19. Januar 2012 14:04
  • Ja genau das meine ich. Wenn ich unter HKCR einen Key Namens z.B. ".0815" anlege und ihm den Wert "MSInfoFile" gebe, dann ist es ein "MSInfoFile". Dann sollten alle Eintrage unter "MSInfoFile" wirksam werden. Tuhen sie aber nicht.

    Wenn ich mir den Schlüssel ".URL" anschaue, hat dieser den Wert "InternetShortcut". Um dort z.B. "mit Notepad öffnen" auf der rechten Maustaste zu erhalten, muß ich aber einen Eintrag unter dem Schlüssel "IE.AssocFile.URL" vornehmen und nicht unter dem Schlüssel  "InternetShortcut".

    Das verstehe ich nicht.

    Donnerstag, 19. Januar 2012 15:05
  • > Ja genau das meine ich. Wenn ich unter HKCR einen Key Namens z.B.
    > ".0815" anlege und ihm den Wert "MSInfoFile" gebe, dann ist es ein
    > "MSInfoFile". Dann sollten alle Eintrage unter "MSInfoFile" wirksam
     
    Wenn ich das per Regkey mache, tut es erst nach Neustart. Mache ich es
    per assoc, geht es sofort.
     
    > Wenn ich mir den Schlüssel ".URL" anschaue, hat dieser den Wert
    > "InternetShortcut". Um dort z.B. "mit Notepad öffnen" auf der rechten
    > Maustaste zu erhalten, muß ich aber einen Eintrag unter dem Schlüssel
    > "IE.AssocFile.URL" vornehmen und nicht unter dem Schlüssel
    > "InternetShortcut".
     
    Weil .URL nicht nur einen Dateityp zugeordnet hat, sondern auch einen
    ShellEx {FBF23B40-E3F0-101B-8488-00AA003E56F8}, was wiederum die CLSID
    von IE.AssocFile.URL ist.
     
    mfg Martin
     

    A bissle "Experience", a bissle GMV... Wenn meine Antwort hilfreich war, freue ich mich über eine Bewertung! If my answer was helpful, I'm glad about a rating!
    Donnerstag, 19. Januar 2012 15:27
  • OK, das mit "IE.AssocFile.URL" habe ich verstanden.

    Mit der Assoziation von NFO-Dateien habe ich jetzt auch herausgefunden:

    "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.nfo\UserChoice" mit dem Wert "Progid"="Applications\\NOTEPAD.EXE" verweist auf den Schlüssel "HKEY_CLASSES_ROOT\Applications\notepad.exe".

    Fehlt nur noch, warum PS1-Datei unter "Datei --> Neu" nicht angezeigt wird.

    mfg

    Dienstag, 24. Januar 2012 10:43
  • > Fehlt nur noch, warum PS1-Datei unter "Datei --> Neu" nicht angezeigt wird.
     
    Wenn Du keinen grundsätzlichen Fehler gemacht hast
    EditFlags ins Spiel:
     
    mfg Martin
     

    A bissle "Experience", a bissle GMV... Wenn meine Antwort hilfreich war, freue ich mich über eine Bewertung! If my answer was helpful, I'm glad about a rating!
    Dienstag, 24. Januar 2012 11:02
  • Unter "HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1" gibt es EditFlags mit den Wert REG_DWORD 0x000020000. Sollte dieser Wert das anzeigen unter Datei --> Neu verhindern ?
    Dienstag, 24. Januar 2012 12:23
  • > Unter "HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1" gibt es EditFlags
    > mit den Wert REG_DWORD 0x000020000. Sollte dieser Wert das anzeigen
    > unter Datei --> Neu verhindern ?
     
    Möglich... Hier die bisher beste Erklärung, die ich gefunden habe:
     
    Aber es funktioniert für ps1 nicht... Seltsam. Sehr seltsam. Und ich
    kann's Dir nicht erklären. )):
     
    mfg Martin
     

    A bissle "Experience", a bissle GMV... Wenn meine Antwort hilfreich war, freue ich mich über eine Bewertung! If my answer was helpful, I'm glad about a rating!
    Dienstag, 24. Januar 2012 13:59
  • Macht nichts, vielleicht find ich irgendwann eine Lösung...

    thx

    Dienstag, 24. Januar 2012 15:06
  • Würde mich freuen, wenn Du sie dann hier postest - das interessiert mich
    schon. Vor allem wenn ich sehe, daß andere da Screenshots bereitgestellt
    haben, wo genau diese Einträge "anscheinend" funktionieren?!?
     
    mfg Martin
     

    A bissle "Experience", a bissle GMV... Wenn meine Antwort hilfreich war, freue ich mich über eine Bewertung! If my answer was helpful, I'm glad about a rating!
    Mittwoch, 25. Januar 2012 09:34
  • jupp, werd' ich machen.
    Mittwoch, 25. Januar 2012 16:14
  • Seit dem Powershell v3 (KB2506143) installiert ist, ist unter "Datei-->Neu" "Windows PowerShell-Skript" vorhanden.
    Dienstag, 3. Juli 2012 13:26