Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Fehlerhafter Zugriff nach Office-Sprachzusatz (https://www.delphipraxis.net/203871-fehlerhafter-zugriff-nach-office-sprachzusatz.html)

MatthiasFehr 2. Apr 2020 08:44

Fehlerhafter Zugriff nach Office-Sprachzusatz
 
Heute habe ich ein besonderes Szenario in einer Software, die seit langer Zeit stabil läuft.

Über
ShellExecute(application.Handle, 'open', 'Dateipfad+Dateiname', NIL, NIL, SW_NORMAL)
wird eine RTF-Datei mit Office geöffnet.

Wie gesagt funktioniert seit Jahren.

Jetzt habe ich bei MS Office Home and Bussines 2019 die Englische Variante nachinstalliert.
Als erstes musste die RTF-Dateiendung wieder an Office zugewiesen werden - offenbar wurde hier einiges bei der Installation geändert.

Meine Software bringt jetzt den Error Code 31. Ein Aufruf über "SHOpenFolderAndSelectItems" zeigt aber, dass die Datei und der Folder noch exitieren und im Explorer geöffnet werden können.

Hat jemand eine Idee?

TiGü 2. Apr 2020 09:38

AW: Fehlerhafter Zugriff nach Office-Sprachzusatz
 
Fehlercode 31 ist ja die Konstante SE_ERR_NOASSOC (There is no application associated with the given file name extension. https://docs.microsoft.com/en-us/win...-shellexecutea)

Weise die Dateiendung RTF nochmal an Microsoft Word zu und starte deinen Rechner neu und prüfe erneut.

Ansonsten vergleiche im Registry Editor (regedit) unter Computer\HKEY_CLASSES_ROOT\.rtf die Zuweisung des RTF-Dateiformates mit anderen ähnlichen Dateiformaten.

Bei mir sieht das bspw. so aus:

Code:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.rtf]
@="Word.RTF.8"
"Content Type"="application/msword"
"PerceivedType"="document"

[HKEY_CLASSES_ROOT\.rtf\OpenWithList]

[HKEY_CLASSES_ROOT\.rtf\OpenWithList\WordPad.exe]
@=""

[HKEY_CLASSES_ROOT\.rtf\OpenWithProgIDs]
"calibre64bit.AssocFile.RTF"=hex(0):
"calibreViewer64bit.AssocFile.RTF"=hex(0):

[HKEY_CLASSES_ROOT\.rtf\PersistentHandler]
@="{2e2294a9-50d7-4fe7-a09f-e6492e185884}"

[HKEY_CLASSES_ROOT\.rtf\ShellEx]

[HKEY_CLASSES_ROOT\.rtf\ShellEx\{8895b1c6-b41f-4c1c-a562-0d564250836f}]
@="{84F66100-FF7C-4fb4-B0C0-02CD7FB668FE}"

[HKEY_CLASSES_ROOT\.rtf\ShellNew]
"Data"="{\\rtf1}"
"ItemName"=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,\
  69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,\
  00,20,00,4e,00,54,00,5c,00,41,00,63,00,63,00,65,00,73,00,73,00,6f,00,72,00,\
  69,00,65,00,73,00,5c,00,57,00,4f,00,52,00,44,00,50,00,41,00,44,00,2e,00,45,\
  00,58,00,45,00,2c,00,2d,00,32,00,31,00,33,00,00,00


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:23 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