AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Defaultanwendung für Dateityp unter W8: wie bestimmen?
Thema durchsuchen
Ansicht
Themen-Optionen

Defaultanwendung für Dateityp unter W8: wie bestimmen?

Ein Thema von ULIK · begonnen am 12. Nov 2014 · letzter Beitrag vom 13. Nov 2014
Antwort Antwort
Benutzerbild von ULIK
ULIK

Registriert seit: 25. Sep 2006
Ort: Regensburg
416 Beiträge
 
Delphi 11 Alexandria
 
#1

Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 12. Nov 2014, 14:48
Servus,

wie bestimmt man unter Windows 8 denn die Anwendung, die einem Dateityp als Default zugeordnet ist?
Unter XP konnte man sich ja durch die Registry hangeln, unter Vista / Windows 7 das Interface IApplicationAssociationRegistration mit QueryAppIsDefault verwenden, nur wie macht man das nun unter Windows 8? Dort ist die API laut MSDN nicht mehr unterstützt. Das Schnittstelle liefert dann bei mir auch immer, daß meine Anwendung der Default ist, obwohl sie es gar nicht ist.

Hintergrund der Geschichte: wenn meine Anwendung der Default für den Dateityp (in dem Fall .PDF) ist, dann möchte ich einige (selbst eingefügte) Einträge aus dem Explorer Kontextmenü ausblenden, die nur Sinn machen, wenn mein Programm nicht der Default ist.


Grüße,
Uli

Geändert von ULIK (12. Nov 2014 um 15:18 Uhr) Grund: Rechtschreibung
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 12. Nov 2014, 15:23
Könnte man nicht mit FindExecutable das zugeordnete Programm ermitteln? Allerdings braucht man dazu IIRC eine existierende Datei des entsprechenden Typs.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von ULIK
ULIK

Registriert seit: 25. Sep 2006
Ort: Regensburg
416 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 12. Nov 2014, 15:58
Hm, das könnte eventuell eine Lösung sein. Die Funktion liefert zwar nichts zurück, wenn eine Windows APP wie der MS Reader der Default ist, aber das würde mir reichen: Ich will ja nur testen, ob ich selbst der Default bin (und mein Programm ist ein Desktop Programm und wird auch gefunden).

Danke für den Tip!

Aber irgendwie hat das dennoch einen etwas unsauberen Beigeschmack für mich. Es muß doch offiziell von MS irgendeinen dokumentierten Weg geben, wie man das herausfindet. Für die Varianten für Windows 7 und älter haben sie sich ja auch die Finger wund geschrieben im MSDN.


Grüße,
Uli
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#4

AW: Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 12. Nov 2014, 17:19
Wieso hangelst du dich nicht -wie bei XP- durch die Registry?
  Mit Zitat antworten Zitat
Benutzerbild von ULIK
ULIK

Registriert seit: 25. Sep 2006
Ort: Regensburg
416 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 12. Nov 2014, 19:09
Weil das schon seit Windows 7 nicht mehr funktioniert! Dort müssen die Anwendungen über eine API registriert werden und ich hab keine Ahnung, wo die hinschreibt. Jedenfalls nicht in die XPVariante rein. Das merkt man daran, wenn man die XP Variante auf sein eigenes Programm füllt und dann die Defaultanwendung mit den Windows-Mitteln umsetzt.

Wenn Du aber die entsprechenden Registry-Zweige kennst, nur her damit!


Grüße, Uli
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
640 Beiträge
 
Delphi 10.1 Berlin Professional
 
#6

AW: Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 12. Nov 2014, 21:50
Schau mal hier nach:

HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\FileExts
Gruss Otto
Wenn du mit Gott reden willst, dann bete.
Wenn du ihn treffen willst, schreib bei Tempo 220 eine SMS
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
675 Beiträge
 
FreePascal / Lazarus
 
#7

AW: Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 13. Nov 2014, 07:38
In Sachen Registry fallen mir spontan mindestens sieben verschiedene Möglichkeiten - zusätzlich zu dem vor mir genannten - ein, die man prüfen müsste (nicht vergessen, neben dem Key für die Dateiendung gibt's noch die Umleitungen auf andere Keys, dann Klassen für DLLs als Handler, und diese grob drei Methoden auch noch für die Default-Handler für alle unbekannten Dateisystemobjekte sowie alle unbekannten Dateien). Und selbst da wäre ich mir nicht sicher, ob das alle sind.

Halte das auch für die schlechteste aller Ideen, kann aber leider nichts zur eigentlichen Frage nach einem besseren Ersatz beitragen.
  Mit Zitat antworten Zitat
Benutzerbild von ULIK
ULIK

Registriert seit: 25. Sep 2006
Ort: Regensburg
416 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Defaultanwendung für Dateityp unter W8: wie bestimmen?

  Alt 13. Nov 2014, 08:59
Erst einmal vielen Dank für die Antworten! Ich werd es jetzt einmal mit FindExecutable implementieren, da dies für meinen Anwendungsfall reicht.
Aber wenn noch jemand mehr zu dem Thema weis, nur zu! Das Problem könnten ja auch noch andere Leute haben.


Danke,
Uli
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz