diff --git a/src/inst-gpa.nsi b/src/inst-gpa.nsi
index 8a76bf64..e2c5ef7a 100644
--- a/src/inst-gpa.nsi
+++ b/src/inst-gpa.nsi
@@ -1,89 +1,194 @@
 # inst-gpa.nsi - Installer snippet for gpa.        -*- coding: latin-1; -*-
 # Copyright (C) 2005, 2008 g10 Code GmbH
 #
 # This file is part of GPG4Win.
 #
 # GPG4Win is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # the Free Software Foundation; either version 2 of the License, or
 # (at your option) any later version.
 #
 # GPG4Win is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
 
 
 !ifdef prefix
 !undef prefix
 !endif
 !define prefix ${ipdir}/gpa-${gpg4win_pkg_gpa_version}
 
 
 !ifdef GPG4WIN_VANILLA
   ${MementoUnselectedSection} "GPA" SEC_gpa
 !else
 !ifdef GPG4WIN_LIGHT
   ${MementoSection} "GPA" SEC_gpa
 !else
   ${MementoUnselectedSection} "GPA" SEC_gpa
 !endif
 !endif
 
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_gpa}"
 !else
   SetOutPath "$INSTDIR\bin"
   File ${prefix}/bin/gpa.exe
 
   File ${ipdir}/pinentry-${gpg4win_pkg_pinentry_version}/bin/pinentry-gtk-2.exe
 
   SetOutPath "$INSTDIR\share\locale\de\LC_MESSAGES"
   File ${prefix}/share/locale/de/LC_MESSAGES/gpa.mo
 
   SetOutPath "$INSTDIR\share\locale\ar\LC_MESSAGES"
   File ${prefix}/share/locale/ar/LC_MESSAGES/gpa.mo
 
   SetOutPath "$INSTDIR\share\locale\es\LC_MESSAGES"
   File ${prefix}/share/locale/es/LC_MESSAGES/gpa.mo
 
   SetOutPath "$INSTDIR\share\locale\fr\LC_MESSAGES"
   File ${prefix}/share/locale/fr/LC_MESSAGES/gpa.mo
 
   SetOutPath "$INSTDIR\share\locale\ru\LC_MESSAGES"
   File ${prefix}/share/locale/ru/LC_MESSAGES/gpa.mo
 
   SetOutPath "$INSTDIR\share\gpa"
   File /nonfatal ${prefix}/share/gpa/gpa-logo.ppm
   File ${prefix}/share/gpa/gpa.png
 
   # If requested, install the configuration files.
   ReadRegStr $0 HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" AppData
   StrCmp $0 "" no_config_gpa_files
   CreateDirectory "$0\gnupg"
 
   g4wihelp::config_fetch "gpa.conf"
   StrCmp $R0 "" no_config_gpa_conf
     CopyFiles $R0 "$0\gnupg\gpa.conf"
   no_config_gpa_conf:
 
   no_config_gpa_files:
 
   WriteRegStr SHCTX "Software\Gpg4win\gpa\Capabilities" "ApplicationDescription" "$(DESC_SEC_gpa)"
   WriteRegStr SHCTX "Software\Gpg4win\gpa\Capabilities" "ApplicationIcon" "$INSTDIR\bin\gpa.exe,0"
   WriteRegStr SHCTX "Software\Gpg4win\gpa\Capabilities" "ApplicationName" "$(DESC_SEC_gpa)"
 
+  SetOutPath "$INSTDIR\share\gpg4win"
+  File "file-ext.ico"
+
+  # .gpg
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.GPG\shell\open\command" "" "$\"$INSTDIR\bin\GPA.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.GPG" "" "$(T_File_Type_gpg_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.GPG" "FriendlyTypeName" "$(T_File_Type_gpg_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.GPG" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.GPG" "InfoTip" "$(T_File_Type_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.GPG\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.GPG\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  WriteRegBin SHCTX "Software\Classes\.gpg\OpenWithProgIDs" "gpg4win.AssocFile.GPA.GPG" 0
+
+  # .asc
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.ASC\shell\open\command" "" "$\"$INSTDIR\bin\GPA.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.ASC" "" "$(T_File_Type_asc_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.ASC" "FriendlyTypeName" "$(T_File_Type_asc_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.ASC" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.ASC" "InfoTip" "$(T_File_Type_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.ASC\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.ASC\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+  WriteRegBin SHCTX "Software\Classes\.asc\OpenWithProgIDs" "gpg4win.AssocFile.GPA.ASC" 0
+
+  # .pgp
+  WriteRegBin SHCTX "Software\Classes\.pgp\OpenWithProgIDs" "gpg4win.AssocFile.GPA.GPG" 0
+
+  # .sig
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPSIG\shell\open\command" "" "$\"$INSTDIR\bin\GPA.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPSIG" "" "$(T_File_Type_sig_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPSIG" "FriendlyTypeName" "$(T_File_Type_sig_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPSIG" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPSIG" "InfoTip" "$(T_File_Type_sig_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPSIG\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPSIG\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  WriteRegBin SHCTX "Software\Classes\.sig\OpenWithProgIDs" "gpg4win.AssocFile.GPA.PGPSIG" 0
+
+  # OpenPGP Key to be used in mime registry
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPKEY\shell\open\command" "" "$\"$INSTDIR\bin\GPA.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPKEY" "" "$(T_File_Type_pgp_key_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPKEY" "FriendlyTypeName" "$(T_File_Type_pgp_key_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPKEY" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPKEY" "InfoTip" "$(T_File_Type_pgp_key_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPKEY\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.PGPKEY\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  # CMS
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.CMS\shell\open\command" "" "$\"$INSTDIR\bin\GPA.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.CMS" "" "$(T_File_Type_pem_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.CMS" "FriendlyTypeName" "$(T_File_Type_pem_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.CMS" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.CMS" "InfoTip" "$(T_File_Type_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.CMS\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.CMS\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  WriteRegBin SHCTX "Software\Classes\.p7s\OpenWithProgIDs" "gpg4win.AssocFile.GPA.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.p7m\OpenWithProgIDs" "gpg4win.AssocFile.GPA.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.crl\OpenWithProgIDs" "gpg4win.AssocFile.GPA.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.pem\OpenWithProgIDs" "gpg4win.AssocFile.GPA.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.arl\OpenWithProgIDs" "gpg4win.AssocFile.GPA.CMS" 0
+
+  # X509 Certificates
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.X509\shell\open\command" "" "$\"$INSTDIR\bin\GPA.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.X509" "FriendlyTypeName" "$(T_File_Type_x509_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.X509" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.X509" "InfoTip" "$(T_File_Type_x509_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.X509\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.GPA.X509\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+  WriteRegBin SHCTX "Software\Classes\gpg4win.AssocFile.GPA.X509" "AllowSilentDefaultTakeOver" 0
+
+  # Register capabilities
+  WriteRegStr SHCTX "Software\RegisteredApplications" "Gpg4win.GPA" "SOFTWARE\Gpg4win\GPA\Capabilities"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA" "" "GPA"
+
+  # File extensions
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".pgp" "gpg4win.AssocFile.GPA.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".asc" "gpg4win.AssocFile.GPA.ASC"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".gpg" "gpg4win.AssocFile.GPA.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".cer" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".p10" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".p12" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".p7c" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".pfx" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".crt" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".der" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".sig" "gpg4win.AssocFile.GPA.PGPSIG"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".arl" "gpg4win.AssocFile.GPA.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".crl" "gpg4win.AssocFile.GPA.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".p7m" "gpg4win.AssocFile.GPA.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".p7s" "gpg4win.AssocFile.GPA.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\FileAssociations" ".pem" "gpg4win.AssocFile.GPA.CMS"
+
+  WriteRegExpandStr SHCTX "Software\Gpg4win\GPA\Capabilities\shell\open\command" "" "$\"$INSTDIR\bin\GPA.exe$\" $\"%1$\""
+
+  # Mime extensions For PGP this is probably pretty useless
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/pgp" "gpg4win.AssocFile.GPA.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/pgp-keys" "gpg4win.AssocFile.GPA.PGPKEY"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/pgp-encrypted" "gpg4win.AssocFile.GPA.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/pgp-signature" "gpg4win.AssocFile.GPA.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/pkcs7-mime" "gpg4win.AssocFile.GPA.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/pkix-cert" "gpg4win.AssocFile.GPA.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/x-x509-ca-cert" "gpg4win.AssocFile.GPA.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\GPA\Capabilities\MimeAssociations" "application/x-pkcs12" "gpg4win.AssocFile.GPA.X509"
+
 !endif
 ${MementoSectionEnd}
 
 
 LangString DESC_SEC_gpa ${LANG_ENGLISH} \
    "GNU Privacy Assistant"
 
 LangString DESC_Menu_gpa ${LANG_ENGLISH} \
    "Run the GNU Privacy Assistant key management tool."
diff --git a/src/inst-kleopatra.nsi b/src/inst-kleopatra.nsi
index 614cb316..fefbe0bd 100644
--- a/src/inst-kleopatra.nsi
+++ b/src/inst-kleopatra.nsi
@@ -1,294 +1,385 @@
 # inst-kleopatra.nsi - Installer snippet for kleopatra.      -*- coding: latin-1; -*-
 # Copyright (C) 2005, 2007, 2008 g10 Code GmbH
 #
 # This file is part of GPG4Win.
 #
 # GPG4Win is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # the Free Software Foundation; either version 2 of the License, or
 # (at your option) any later version.
 #
 # GPG4Win is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
 
 
 !ifdef prefix
 !undef prefix
 !endif
 !define prefix ${ipdir}/kleopatra-${gpg4win_pkg_kleopatra_version}
 
 ${MementoSection} "Kleopatra" SEC_kleopatra
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   # Kleopatra Source Package also contains kdepimlibs, kdelibs and
   # kde-runtime, as well as win-iconv and attica
   File "${gpg4win_pkg_kleopatra}"
 !else
 
   SetOutPath "$INSTDIR\bin"
   File ${prefix}/bin/kleopatra.exe
   #File ${prefix}/bin/kwatchgnupg.exe
 
   File ${prefix}/bin/libkleopatraclientcore.dll
   File ${prefix}/bin/libkleopatraclientgui.dll
 
   # The KCM lib is directly linked
   File ${prefix}/lib/plugins/kcm_kleopatra.dll
 
   SetOutPath "$INSTDIR\share\kleopatra\pics"
 
   File ${prefix}/share/kleopatra/pics/gpg4win.png
   File ${prefix}/share/kleopatra/pics/kleopatra_splashscreen.png
   File ${prefix}/share/kleopatra/pics/kleopatra_splashscreen.svgz
   File ${prefix}/share/kleopatra/pics/kleopatra_wizard.png
   File ${prefix}/share/kleopatra/pics/kleopatra_wizard.svgz
 
   SetOutPath "$INSTDIR\share\kservices5"
   File ${prefix}/share/kservices5/kleopatra_config_appear.desktop
   File ${prefix}/share/kservices5/kleopatra_config_gnupgsystem.desktop
   File ${prefix}/share/kservices5/kleopatra_config_cryptooperations.desktop
   File ${prefix}/share/kservices5/kleopatra_config_smimevalidation.desktop
   File ${prefix}/share/kservices5/kleopatra_config_dirserv.desktop
 
 #  SetOutPath "$INSTDIR\share\apps\kwatchgnupg\pics"
 
 #  File ${prefix}/share/apps/kwatchgnupg/pics/kwatchgnupg.png
 #  File ${prefix}/share/apps/kwatchgnupg/pics/kwatchgnupg2.png
 
 #  # TODO Can't mix localized and en commons when we install
 #  # more then one kde langanuage
 #  SetOutPath "$INSTDIR\share\doc\HTML\common"
 #
 #  File ${prefix}/share/doc/HTML/en/common/1.png
 #  File ${prefix}/share/doc/HTML/en/common/10.png
 #  File ${prefix}/share/doc/HTML/en/common/2.png
 #  File ${prefix}/share/doc/HTML/en/common/3.png
 #  File ${prefix}/share/doc/HTML/en/common/4.png
 #  File ${prefix}/share/doc/HTML/en/common/5.png
 #  File ${prefix}/share/doc/HTML/en/common/6.png
 #  File ${prefix}/share/doc/HTML/en/common/7.png
 #  File ${prefix}/share/doc/HTML/en/common/8.png
 #  File ${prefix}/share/doc/HTML/en/common/9.png
 #  File ${prefix}/share/doc/HTML/en/common/artistic-license.html
 #  File ${prefix}/share/doc/HTML/en/common/block_title_bottom.png
 #  File ${prefix}/share/doc/HTML/en/common/block_title_mid.png
 #  File ${prefix}/share/doc/HTML/en/common/block_title_top.png
 #  File ${prefix}/share/doc/HTML/en/common/bottom-left.png
 #  File ${prefix}/share/doc/HTML/en/common/bottom-middle.png
 #  File ${prefix}/share/doc/HTML/en/common/bottom-right.png
 #  File ${prefix}/share/doc/HTML/en/common/bsd-license.html
 #  File ${prefix}/share/doc/HTML/en/common/doxygen.css
 #  File ${prefix}/share/doc/HTML/en/common/favicon.ico
 #  File ${prefix}/share/doc/HTML/en/common/fdl-license.html
 #  File ${prefix}/share/doc/HTML/en/common/fdl-license
 #  File ${prefix}/share/doc/HTML/en/common/fdl-notice.html
 #  File ${prefix}/share/doc/HTML/en/common/kde-docs.css
 #  File ${prefix}/share/doc/HTML/en/common/footer.html
 #  File ${prefix}/share/doc/HTML/en/common/gpl-license.html
 #  File ${prefix}/share/doc/HTML/en/common/gpl-license
 #  File ${prefix}/share/doc/HTML/en/common/header.html
 #  File ${prefix}/share/doc/HTML/en/common/kde-default.css
 #  File ${prefix}/share/doc/HTML/en/common/kde-docs.css
 #  File ${prefix}/share/doc/HTML/en/common/kde_logo_bg.png
 #  File ${prefix}/share/doc/HTML/en/common/lgpl-license.html
 #  File ${prefix}/share/doc/HTML/en/common/lgpl-license
 #  File ${prefix}/share/doc/HTML/en/common/mainfooter.html
 #  File ${prefix}/share/doc/HTML/en/common/mainheader.html
 #  File ${prefix}/share/doc/HTML/en/common/qpl-license.html
 #  File ${prefix}/share/doc/HTML/en/common/tabs.css
 #  File ${prefix}/share/doc/HTML/en/common/top-kde.jpg
 #  File ${prefix}/share/doc/HTML/en/common/top-left.jpg
 #  File ${prefix}/share/doc/HTML/en/common/top-left.png
 #  File ${prefix}/share/doc/HTML/en/common/top-middle.png
 #  File ${prefix}/share/doc/HTML/en/common/top-right.jpg
 #  File ${prefix}/share/doc/HTML/en/common/top-right.png
 #  File ${prefix}/share/doc/HTML/en/common/top.jpg
 #  File ${prefix}/share/doc/HTML/en/common/x11-license.html
 #  File ${prefix}/share/doc/HTML/en/common/xml.dcl
 #
 #  File ${prefix}/share/doc/HTML/de/common/fdl-translated.html
 #  File ${prefix}/share/doc/HTML/de/common/gpl-translated.html
 #  File ${prefix}/share/doc/HTML/de/common/kde-localised.css
 #  File ${prefix}/share/doc/HTML/de/common/lgpl-translated.html
 #
 #  SetOutPath "$INSTDIR\share\doc\HTML\de\kleopatra"
 #
 #  File ${prefix}/share/doc/HTML/de/kleopatra/admin-archive-definitions.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/admin-checksum-definitions.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/admin-key-filters.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/admin.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/commandline-options.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/configuration-appearance.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/configuration-crypto-operations.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/configuration-gnupg-system.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/configuration-smime-validation.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/configuration.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/credits-and-license.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/functions-newkey.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/functions-search.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/functions.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/index.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/introduction.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/menu.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/menucertificates.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/menuhelp.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/menusettings.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/menutools.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/menuview.html
 #  File ${prefix}/share/doc/HTML/de/kleopatra/menuwindow.html
 #
 #  SetOutPath "$INSTDIR\share\doc\HTML\en\kleopatra"
 #
 #  File ${prefix}/share/doc/HTML/en/kleopatra/admin-archive-definitions.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/admin-checksum-definitions.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/admin-key-filters.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/admin.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/commandline-options.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/configuration-appearance.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/configuration-crypto-operations.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/configuration-gnupg-system.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/configuration-smime-validation.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/configuration.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/credits-and-license.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/functions-newkey.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/functions-search.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/functions.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/index.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/introduction.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/menu.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/menucertificates.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/menuhelp.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/menusettings.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/menutools.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/menuview.html
 #  File ${prefix}/share/doc/HTML/en/kleopatra/menuwindow.html
 
   SetOutPath "$INSTDIR\share\icons\hicolor\128x128\apps"
 
   File ${prefix}/share/icons/hicolor/128x128/apps/kleopatra.png
 
   SetOutPath "$INSTDIR\share\icons\hicolor\16x16\apps"
 
   File ${prefix}/share/kleopatra/pics/gpg4win-compact.png
   File ${prefix}/share/icons/hicolor/16x16/apps/kleopatra.png
 
   SetOutPath "$INSTDIR\share\icons\hicolor\22x22\apps"
 
   File ${prefix}/share/icons/hicolor/22x22/apps/kleopatra.png
 
   SetOutPath "$INSTDIR\share\icons\hicolor\256x256\apps"
 
   File ${prefix}/share/icons/hicolor/256x256/apps/kleopatra.png
 
   SetOutPath "$INSTDIR\share\icons\hicolor\32x32\apps"
 
   File ${prefix}/share/icons/hicolor/32x32/apps/kleopatra.png
 
   SetOutPath "$INSTDIR\share\icons\hicolor\48x48\apps"
 
   File ${prefix}/share/icons/hicolor/48x48/apps/kleopatra.png
 
   SetOutPath "$INSTDIR\share\icons\hicolor\64x64\apps"
 
   File ${prefix}/share/icons/hicolor/64x64/apps/kleopatra.png
 
   SetOutPath "$INSTDIR\share\icons\hicolor"
   File ${prefix}/share/icons/hicolor/icon-theme.cache
   File index.theme
 
   # In KDE 4.10 the locale detection in kdelibs is broken so we
   # install a kdeglobals with the language setting chosen in the
   # installer
-  push $1
-  FileOpen $1 "$INSTDIR\share\kdeglobals" "w"
-  # Writing out icon theme is important here otherwise you have
-  # weird effects like no toolbar icons.
-  FileWrite $1 '[Icons]$\r$\n'
-  FileWrite $1 'Theme=breeze$\r$\n$\r$\n'
-  FileClose $1
-  pop $1
-
+  SetOutPath "$INSTDIR\share"
+  File kdeglobals
   SetOutPath "$INSTDIR\share\QtProject"
-  # We want kleopatra logging for debugging
-  push $1
-  FileOpen $1 "$INSTDIR\share\QtProject\qtlogging.ini" "w"
-  FileWrite $1 '[Rules]$\r$\n'
-  FileWrite $1 'org.kde.pim.*=true$\r$\n'
-  FileClose $1
-  pop $1
+  File qtlogging.ini
 
   SetOutPath "$INSTDIR\..\GnuPG\share\doc\gnupg\examples"
   # Install profiles
   push $1
   FileOpen $1 "$INSTDIR\..\GnuPG\share\doc\gnupg\examples\VS-NfD.prf" "w"
   FileWrite $1 '# VS-NfD.prf - Configure options for the VS-NfD mode           -*- conf -*-$\r$\n'
   FileWrite $1 '$\r$\n'
   FileWrite $1 '[gpg]$\r$\n'
   FileWrite $1 'compliance de-vs$\r$\n'
   FileWrite $1 'default-new-key-algo rsa3072/cert,sign+rsa3072/encr$\r$\n'
   FileWrite $1 '$\r$\n'
   FileWrite $1 '[gpgsm]$\r$\n'
   FileWrite $1 'enable-crl-checks$\r$\n'
   FileWrite $1 'compliance de-vs$\r$\n'
   FileWrite $1 '$\r$\n'
   FileWrite $1 '[gpg-agent]$\r$\n'
   FileWrite $1 'enable-extended-key-format$\r$\n'
   FileWrite $1 'default-cache-ttl 900$\r$\n'
   FileWrite $1 'max-cache-ttl 3600$\r$\n'
   FileWrite $1 'no-allow-mark-trusted$\r$\n'
   FileWrite $1 'no-allow-external-cache$\r$\n'
   FileWrite $1 'enforce-passphrase-constraints$\r$\n'
   FileWrite $1 'min-passphrase-len 9$\r$\n'
   FileWrite $1 'min-passphrase-nonalpha 0$\r$\n'
   FileWrite $1 '$\r$\n'
   FileWrite $1 '[dirmngr]$\r$\n'
   FileWrite $1 'allow-ocsp$\r$\n'
   FileClose $1
   pop $1
 
   push $1
   FileOpen $1 "$INSTDIR\..\GnuPG\share\doc\gnupg\examples\Automatic.prf" "w"
   FileWrite $1 '# Automatic.prf - Configure options for a more automatic mode           -*- conf -*-$\r$\n'
   FileWrite $1 '$\r$\n'
   FileWrite $1 '[gpg]$\r$\n'
   FileWrite $1 'auto-key-locate local,wkd,dane$\r$\n'
   FileWrite $1 'auto-key-retrieve$\r$\n'
   FileWrite $1 'trust-model tofu+pgp$\r$\n'
   FileWrite $1 '$\r$\n'
   FileClose $1
   pop $1
 
   WriteRegStr SHCTX "Software\Gpg4win\kleopatra\Capabilities" "ApplicationDescription" "$(DESC_SEC_kleopatra)"
   WriteRegStr SHCTX "Software\Gpg4win\kleopatra\Capabilities" "ApplicationIcon" "$INSTDIR\bin\kleopatra.exe,0"
   WriteRegStr SHCTX "Software\Gpg4win\kleopatra\Capabilities" "ApplicationName" "Kleopatra"
 
+  SetOutPath "$INSTDIR\share\gpg4win"
+  File "file-ext.ico"
 
   # Openpgp4fpr URI scheme
   WriteRegStr SHCTX "Software\Classes\openpgp4fpr" "" "URL:OpenPGP master key fingerprint"
   WriteRegStr SHCTX "Software\Classes\openpgp4fpr" "URL Protocol" ""
   WriteRegStr SHCTX "Software\Classes\openpgp4fpr\DefaultIcon" "" "$INSTDIR\bin\kleopatra.exe,0"
   WriteRegStr SHCTX "Software\Classes\openpgp4fpr\shell\open\command" "" "$\"$INSTDIR\bin\kleopatra.exe$\" --query -- $\"%1$\""
 
   # p7s / p7m are special because they are already known
   WriteRegExpandStr SHCTX "Software\Classes\P7MFile\shell\open\command" "" "$\"$INSTDIR\bin\kleopatra.exe$\" -- $\"%1$\""
   WriteRegStr SHCTX "Software\Classes\P7MFile\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
 
   WriteRegExpandStr SHCTX "Software\Classes\P7SFile\shell\open\command" "" "$\"$INSTDIR\bin\kleopatra.exe$\" -- $\"%1$\""
   WriteRegStr SHCTX "Software\Classes\P7SFile\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
 
+  # .gpg
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.GPG\shell\open\command" "" "$\"$INSTDIR\bin\Kleopatra.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.GPG" "" "$(T_File_Type_gpg_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.GPG" "FriendlyTypeName" "$(T_File_Type_gpg_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.GPG" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.GPG" "InfoTip" "$(T_File_Type_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.GPG\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.GPG\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  WriteRegBin SHCTX "Software\Classes\.gpg\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.GPG" 0
+
+  # .asc
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.ASC\shell\open\command" "" "$\"$INSTDIR\bin\Kleopatra.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.ASC" "" "$(T_File_Type_asc_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.ASC" "FriendlyTypeName" "$(T_File_Type_asc_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.ASC" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.ASC" "InfoTip" "$(T_File_Type_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.ASC\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.ASC\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+  WriteRegBin SHCTX "Software\Classes\.asc\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.ASC" 0
+
+  # .pgp
+  WriteRegBin SHCTX "Software\Classes\.pgp\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.GPG" 0
+
+  # .sig
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPSIG\shell\open\command" "" "$\"$INSTDIR\bin\Kleopatra.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPSIG" "" "$(T_File_Type_sig_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPSIG" "FriendlyTypeName" "$(T_File_Type_sig_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPSIG" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPSIG" "InfoTip" "$(T_File_Type_sig_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPSIG\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPSIG\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  WriteRegBin SHCTX "Software\Classes\.sig\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.PGPSIG" 0
+
+  # OpenPGP Key to be used in mime registry
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPKEY\shell\open\command" "" "$\"$INSTDIR\bin\Kleopatra.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPKEY" "" "$(T_File_Type_pgp_key_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPKEY" "FriendlyTypeName" "$(T_File_Type_pgp_key_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPKEY" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPKEY" "InfoTip" "$(T_File_Type_pgp_key_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPKEY\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.PGPKEY\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  # CMS
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.CMS\shell\open\command" "" "$\"$INSTDIR\bin\Kleopatra.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.CMS" "" "$(T_File_Type_pem_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.CMS" "FriendlyTypeName" "$(T_File_Type_pem_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.CMS" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.CMS" "InfoTip" "$(T_File_Type_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.CMS\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.CMS\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+
+  WriteRegBin SHCTX "Software\Classes\.p7s\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.p7m\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.crl\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.pem\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.CMS" 0
+  WriteRegBin SHCTX "Software\Classes\.arl\OpenWithProgIDs" "gpg4win.AssocFile.Kleopatra.CMS" 0
+
+  # X509 Certificates
+  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.X509\shell\open\command" "" "$\"$INSTDIR\bin\Kleopatra.exe$\" $\"%1$\""
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.X509" "FriendlyTypeName" "$(T_File_Type_x509_Name)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.X509" "PercievedType" "Document"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.X509" "InfoTip" "$(T_File_Type_x509_info_tip)"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.X509\CurVer" "" "${VERSION}"
+  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.X509\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
+  WriteRegBin SHCTX "Software\Classes\gpg4win.AssocFile.Kleopatra.X509" "AllowSilentDefaultTakeOver" 0
+
+  # Register capabilities
+  WriteRegStr SHCTX "Software\RegisteredApplications" "Gpg4win.Kleopatra" "SOFTWARE\Gpg4win\Kleopatra\Capabilities"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra" "" "Kleopatra"
+
+  # File extensions
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".pgp" "gpg4win.AssocFile.Kleopatra.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".asc" "gpg4win.AssocFile.Kleopatra.ASC"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".gpg" "gpg4win.AssocFile.Kleopatra.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".cer" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".p10" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".p12" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".p7c" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".pfx" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".crt" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".der" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".sig" "gpg4win.AssocFile.Kleopatra.PGPSIG"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".arl" "gpg4win.AssocFile.Kleopatra.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".crl" "gpg4win.AssocFile.Kleopatra.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".p7m" "gpg4win.AssocFile.Kleopatra.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".p7s" "gpg4win.AssocFile.Kleopatra.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\FileAssociations" ".pem" "gpg4win.AssocFile.Kleopatra.CMS"
+
+  WriteRegExpandStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\shell\open\command" "" "$\"$INSTDIR\bin\Kleopatra.exe$\" $\"%1$\""
+
+  # Mime extensions For PGP this is probably pretty useless
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/pgp" "gpg4win.AssocFile.Kleopatra.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/pgp-keys" "gpg4win.AssocFile.Kleopatra.PGPKEY"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/pgp-encrypted" "gpg4win.AssocFile.Kleopatra.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/pgp-signature" "gpg4win.AssocFile.Kleopatra.GPG"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/pkcs7-mime" "gpg4win.AssocFile.Kleopatra.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/pkix-cert" "gpg4win.AssocFile.Kleopatra.CMS"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/x-x509-ca-cert" "gpg4win.AssocFile.Kleopatra.X509"
+  WriteRegStr SHCTX "Software\Gpg4win\Kleopatra\Capabilities\MimeAssociations" "application/x-pkcs12" "gpg4win.AssocFile.Kleopatra.X509"
+
 !endif
 ${MementoSectionEnd}
 
 
 LangString DESC_SEC_kleopatra ${LANG_ENGLISH} \
    "Keymanager for OpenPGP and X.509 and common crypto dialogs."
 
 
 LangString DESC_Menu_kleopatra ${LANG_ENGLISH} \
    "Run the Kleopatra key management tool."
diff --git a/src/installer-finish.nsi b/src/installer-finish.nsi
index 9725552f..f6aee014 100644
--- a/src/installer-finish.nsi
+++ b/src/installer-finish.nsi
@@ -1,272 +1,136 @@
 # installer-finish.nsi - Installer for GPG4Win.      -*- coding: latin-1; -*-
 # Copyright (C) 2005, 2008 g10 Code GmbH
 # 
 # This file is part of GPG4Win.
 # 
 # GPG4Win is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # the Free Software Foundation; either version 2 of the License, or
 # (at your option) any later version.
 # 
 # GPG4Win is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
 
 Var MYTMP
 
-Function SetupExtRegKeys
-  Pop $0
-  # .gpg
-  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.GPG\shell\open\command" "" "$\"$INSTDIR\bin\$0.exe$\" $\"%1$\""
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.GPG" "" "$(T_File_Type_gpg_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.GPG" "FriendlyTypeName" "$(T_File_Type_gpg_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.GPG" "PercievedType" "Document"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.GPG" "InfoTip" "$(T_File_Type_info_tip)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.GPG\CurVer" "" "${VERSION}"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.GPG\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
-
-  WriteRegBin SHCTX "Software\Classes\.gpg\OpenWithProgIDs" "gpg4win.AssocFile.$0.GPG" 0
-
-  # .asc
-  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.ASC\shell\open\command" "" "$\"$INSTDIR\bin\$0.exe$\" $\"%1$\""
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.ASC" "" "$(T_File_Type_asc_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.ASC" "FriendlyTypeName" "$(T_File_Type_asc_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.ASC" "PercievedType" "Document"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.ASC" "InfoTip" "$(T_File_Type_info_tip)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.ASC\CurVer" "" "${VERSION}"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.ASC\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
-  WriteRegBin SHCTX "Software\Classes\.asc\OpenWithProgIDs" "gpg4win.AssocFile.$0.ASC" 0
-
-  # .pgp
-  WriteRegBin SHCTX "Software\Classes\.pgp\OpenWithProgIDs" "gpg4win.AssocFile.$0.GPG" 0
-
-  # .sig
-  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPSIG\shell\open\command" "" "$\"$INSTDIR\bin\$0.exe$\" $\"%1$\""
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPSIG" "" "$(T_File_Type_sig_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPSIG" "FriendlyTypeName" "$(T_File_Type_sig_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPSIG" "PercievedType" "Document"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPSIG" "InfoTip" "$(T_File_Type_sig_info_tip)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPSIG\CurVer" "" "${VERSION}"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPSIG\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
-
-  WriteRegBin SHCTX "Software\Classes\.sig\OpenWithProgIDs" "gpg4win.AssocFile.$0.PGPSIG" 0
-
-  # OpenPGP Key to be used in mime registry
-  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPKEY\shell\open\command" "" "$\"$INSTDIR\bin\$0.exe$\" $\"%1$\""
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPKEY" "" "$(T_File_Type_pgp_key_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPKEY" "FriendlyTypeName" "$(T_File_Type_pgp_key_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPKEY" "PercievedType" "Document"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPKEY" "InfoTip" "$(T_File_Type_pgp_key_info_tip)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPKEY\CurVer" "" "${VERSION}"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.PGPKEY\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
-
-  # CMS
-  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.CMS\shell\open\command" "" "$\"$INSTDIR\bin\$0.exe$\" $\"%1$\""
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.CMS" "" "$(T_File_Type_pem_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.CMS" "FriendlyTypeName" "$(T_File_Type_pem_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.CMS" "PercievedType" "Document"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.CMS" "InfoTip" "$(T_File_Type_info_tip)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.CMS\CurVer" "" "${VERSION}"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.CMS\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
-
-  WriteRegBin SHCTX "Software\Classes\.p7s\OpenWithProgIDs" "gpg4win.AssocFile.$0.CMS" 0
-  WriteRegBin SHCTX "Software\Classes\.p7m\OpenWithProgIDs" "gpg4win.AssocFile.$0.CMS" 0
-  WriteRegBin SHCTX "Software\Classes\.crl\OpenWithProgIDs" "gpg4win.AssocFile.$0.CMS" 0
-  WriteRegBin SHCTX "Software\Classes\.pem\OpenWithProgIDs" "gpg4win.AssocFile.$0.CMS" 0
-  WriteRegBin SHCTX "Software\Classes\.arl\OpenWithProgIDs" "gpg4win.AssocFile.$0.CMS" 0
-
-  # X509 Certificates
-  WriteRegExpandStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.X509\shell\open\command" "" "$\"$INSTDIR\bin\$0.exe$\" $\"%1$\""
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.X509" "FriendlyTypeName" "$(T_File_Type_x509_Name)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.X509" "PercievedType" "Document"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.X509" "InfoTip" "$(T_File_Type_x509_info_tip)"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.X509\CurVer" "" "${VERSION}"
-  WriteRegStr SHCTX "Software\Classes\gpg4win.AssocFile.$0.X509\DefaultIcon" "" "$INSTDIR\share\gpg4win\file-ext.ico"
-  WriteRegBin SHCTX "Software\Classes\gpg4win.AssocFile.$0.X509" "AllowSilentDefaultTakeOver" 0
-
-  # Register capabilities
-  WriteRegStr SHCTX "Software\RegisteredApplications" "Gpg4win.$0" "SOFTWARE\Gpg4win\$0\Capabilities"
-  WriteRegStr SHCTX "Software\Gpg4win\$0" "" "$0"
-
-  # File extensions
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".pgp" "gpg4win.AssocFile.$0.GPG"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".asc" "gpg4win.AssocFile.$0.ASC"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".gpg" "gpg4win.AssocFile.$0.GPG"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".cer" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".p10" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".p12" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".p7c" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".pfx" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".crt" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".der" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".sig" "gpg4win.AssocFile.$0.PGPSIG"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".arl" "gpg4win.AssocFile.$0.CMS"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".crl" "gpg4win.AssocFile.$0.CMS"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".p7m" "gpg4win.AssocFile.$0.CMS"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".p7s" "gpg4win.AssocFile.$0.CMS"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\FileAssociations" ".pem" "gpg4win.AssocFile.$0.CMS"
-
-  WriteRegExpandStr SHCTX "Software\Gpg4win\$0\Capabilities\shell\open\command" "" "$\"$INSTDIR\bin\$0.exe$\" $\"%1$\""
-
-  # Mime extensions For PGP this is probably pretty useless
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/pgp" "gpg4win.AssocFile.$0.GPG"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/pgp-keys" "gpg4win.AssocFile.$0.PGPKEY"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/pgp-encrypted" "gpg4win.AssocFile.$0.GPG"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/pgp-signature" "gpg4win.AssocFile.$0.GPG"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/pkcs7-mime" "gpg4win.AssocFile.$0.CMS"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/pkix-cert" "gpg4win.AssocFile.$0.CMS"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/x-x509-ca-cert" "gpg4win.AssocFile.$0.X509"
-  WriteRegStr SHCTX "Software\Gpg4win\$0\Capabilities\MimeAssociations" "application/x-pkcs12" "gpg4win.AssocFile.$0.X509"
-
-FunctionEnd
-
 Function SetupExtensions
-  g4wihelp::config_fetch_bool "register_extensions"
-  StrCmp $R0 "1" reg_set  reg_extensions_not_one
-reg_extensions_not_one:
-  StrCmp $R0 "0" leave 0
-
-reg_set:
-  SetOutPath "$INSTDIR\share\gpg4win"
-  File "file-ext.ico"
-  !insertmacro SectionFlagIsSet ${SEC_kleopatra} \
-        ${SF_SELECTED} have_kleo 0
-  !insertmacro SectionFlagIsSet ${SEC_gpa} \
-        ${SF_SELECTED} have_gpa 0
-  goto leave
-have_kleo:
-  DetailPrint "Registering file extensions"
-  # See:
-  # https://msdn.microsoft.com/en-us/library/windows/desktop/cc144104%28v=vs.85%29.aspx
-  # For documentation.
-
-  push Kleopatra
-  call SetupExtRegKeys
-
-  !insertmacro SectionFlagIsSet ${SEC_gpa} \
-        ${SF_SELECTED} 0 leave2
-have_gpa:
-  push GPA
-  call SetupExtRegKeys
-
-leave2:
 System::Call 'Shell32::SHChangeNotify(i 0x8000000, i 0, i 0, i 0)'
-leave:
 FunctionEnd
 
 LangString T_File_Type_gpg_Name ${LANG_ENGLISH} \
    "OpenPGP Binary File"
 
 LangString T_File_Type_asc_Name ${LANG_ENGLISH} \
    "OpenPGP Text File"
 
 LangString T_File_Type_sig_Name ${LANG_ENGLISH} \
    "OpenPGP Signature"
 
 LangString T_File_Type_pgp_key_Name ${LANG_ENGLISH} \
    "OpenPGP Certificate File"
 
 LangString T_File_Type_pem_Name ${LANG_ENGLISH} \
    "CMS (S/MIME) File"
 
 LangString T_File_Type_x509_Name ${LANG_ENGLISH} \
    "X509 Certificate File"
 
 LangString T_File_Type_x509_info_tip ${LANG_ENGLISH} \
    "Certificate for CMS (S/MIME)."
 
 LangString T_File_Type_info_tip ${LANG_ENGLISH} \
    "This can be encrypted data, a signature or a certificate."
 
 LangString T_File_Type_sig_info_tip ${LANG_ENGLISH} \
    "A cryptographic signature to verify the authenticity of another file."
 
 LangString T_File_Type_pgp_key_info_tip ${LANG_ENGLISH} \
    "Certificate for OpenPGP."
 
 # Last section is a hidden one.
 Section
   WriteUninstaller "$INSTDIR\${PACKAGE}-uninstall.exe"
 
   # Windows Add/Remove Programs support
   # Note that the version is appended to the DisplayName, despite that
   # this is not necessary as a click on "support information" gives
   # the version number.  Some tools do that, other don't.  I don't
   # like it but others want me to do that.  -wk
   StrCpy $MYTMP "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRETTY_PACKAGE_SHORT}"
   WriteRegExpandStr SHCTX $MYTMP "UninstallString" '"$INSTDIR\${PACKAGE}-uninstall.exe"'
   WriteRegExpandStr SHCTX $MYTMP "InstallLocation" "$INSTDIR"
   WriteRegStr       SHCTX $MYTMP "DisplayName"     "${PRETTY_PACKAGE} (${VERSION})"
   WriteRegStr       SHCTX $MYTMP "DisplayIcon"     "$INSTDIR\bin\kleopatra.exe,0"
   WriteRegStr       SHCTX $MYTMP "DisplayVersion"  "${VERSION}"
   WriteRegStr       SHCTX $MYTMP "Publisher"       "The Gpg4win Project"
   WriteRegStr       SHCTX $MYTMP "URLInfoAbout"    "http://www.gpg4win.org/"
   WriteRegDWORD     SHCTX $MYTMP "NoModify"        "1"
   WriteRegDWORD     SHCTX $MYTMP "NoRepair"        "1"
 
   WriteRegStr SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp" "Extension" ".gpg"
   WriteRegStr SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp-signature" "Extension" ".sig"
   WriteRegStr SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp-encrypted" "Extension" ".gpg"
   WriteRegStr SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp-keys" "Extension" ".gpg"
 
   call SetupExtensions
 SectionEnd
 
 
 Section Uninstall
   UserInfo::GetAccountType
   Pop $1
   StrCmp $1 "Admin" is_admin is_no_admin
 is_admin:
   SetShellVarContext all
 is_no_admin:
 
   #---------------------------------------------------
   # Delete the menu entries and any empty parent menus
   #---------------------------------------------------
   Delete "$SMPROGRAMS\GPA.lnk"
   Delete "$SMPROGRAMS\Kleopatra.lnk"
 
   # Delete Desktop links.
   StrCmp $is_update '1' no_desktop_delete
 !ifdef HAVE_PKG_GPA
   Delete "$DESKTOP\GPA.lnk"
 !endif
 !ifdef HAVE_PKG_KLEOPATRA
   Delete "$DESKTOP\Kleopatra.lnk"
 !endif
 no_desktop_delete:
 
   Delete "$INSTDIR\${PACKAGE}-uninstall.exe"
 
   Delete "$INSTDIR\share\gpg4win\file-ext.ico"
   RMDir "$INSTDIR\share\gpg4win"
   RMDir "$INSTDIR\share"
   RMDir "$INSTDIR"
 
   # If we installed in the default location, try to be really, really
   # nice with sugar on it to clean up behind us.  In any case, try very
   # hard to get rid of directories which could have REBOOTOK files.
   RMDir /REBOOTOK "$INSTDIR\bin"
   RMDir /REBOOTOK "$INSTDIR"
 
   # Clean the registry.
   DeleteRegValue SHCTX "Software\${PRETTY_PACKAGE_SHORT}" \
         "Install Directory"
   DeleteRegKey /ifempty SHCTX "Software\${PRETTY_PACKAGE_SHORT}"
 
   # Remove Windows Add/Remove Programs support.
   DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRETTY_PACKAGE_SHORT}"
 
   DeleteRegKey SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp"
   DeleteRegKey SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp-signature"
   DeleteRegKey SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp-encrypted"
   DeleteRegKey SHCTX "Software\Classes\MIME\Database\Content Type\application/pgp-keys"
 
 
 SectionEnd